-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rosetta should ignore the "a11y" key in strings files #214
Comments
@jbphet, work over in #193 has been wrapping up. We are ready here for rosetta to be set to ignore the |
Seems "medium" to me - I do think this work should be done, @jbphet may want to confer with EM as to where it can fit in with his sonfication/a11y obligations. |
@jbphet, note that you can use the |
I just discussed when to work on this with @kathy-phet and @emily-phet, and we decided that I could use the time that was allocated for Number Line Suite after the first dev version of Number Line: Integers goes into dev testing. The max time to spend on this is two calendar weeks, and if I can't get rosetta into shape where I can make these changes on master by then, I'll branch from the currently live SHA and add just the feature to ignore a11y strings. I'd really like to avoid doing this, since it will increase the complexity of managing rosetta. |
FYI - When I was demoing translation at a conference this week, I noticed that the a11y strings are appearing in Rosetta, should this be happening? It seemed like all of this discussion is around disabling that for now (although I cannot recall why we would want to disable it?)? Raising priority on this for now, until I hear that Rosetta is working as expected and that it should be displaying the a11y strings in the picture above. |
@jbphet - Please review my comment above. Is this what is expected? That is, are we now ready for translators to translate a11y strings? If so, we should tell them! If not, we should hide these. |
@kathy-phet - I've looked into this, and those strings are actually from the "Keyboard Shortcuts" dialog. As such, it's probably appropriate that they are translatable and aren't identified as a11y strings. Please let me know if you disagree and, if so, we can create a new issue and track further discussion there. |
I spoke with @kathy-phet in person, and she's fine with the strings from the "Keyboard Shortcuts" dialog being available for translation. She just initially thought that some of the strings looked like those used for screen-reader-based descriptions and wanted to make sure that such strings weren't leaking into the translation interface before we're ready for it. |
@jbphet mentioned that he is close to working on this. I'll merge the chipper branch to master. |
Slack dialog with @zepumph about plan for this:
@jbphet🏢 10:07 AM
I'm going to be working on a11y support in Rosetta, and I had an idea for testing that I wanted to run by you: What if we add some a11y strings to Chains once I've got the rosetta changes implemented so that we can do end-to-end testing? I'd probably need help from you or someone to add the strings in a legit way so that the build process doesn't complain about unused string. What do you think?
@zepumph 10:57 AM @jbphet🏢 11:01 AM @zepumph 11:10 AM |
Because of refactoring of UtteranceQueue into its own library, there were some changes needed in the friction a11ystring-plugin branch. I committed them above to get @jbphet into a testable place for friction on that branch. |
I used the a11ystring-plugin branch of friction that @zepumph describes above to test how Rosetta behaves when a11y strings are present prior to adding code to identify and exclude a11y strings. To make this test work, I added test-specific code to Rosetta to reference a built version of friction from this branch as well as the string file from the branch on GitHub. Long story short, it behaves exactly as we would like it to, meaning that it doesn't crash and it doesn't present the a11y strings to the user for translation. The reason is that, if the code finds a string key in the sim that doesn't appear in the English strings file, it doesn't show that string to the user, and right now Rosetta doesn't know how to look for nested strings. So, for instance, during the test Rosetta found the string key "a11y.moveBookWith" in the friction HTML file, but when it looked in the English string file from GitHub, it used "a11y": {
"moveBookWith": {
"value": "Move grabbed book or zoomed-in book up, left, down, or right with Arrow keys, or with letter keys W, A, S, or D."
} So, we could leave the code alone and meet the letter of the law for this GitHub issue. However, I think it would be much better to add code that explicitly ignores string keys that start with |
The code to explicitly ignore a11y strings should now be in place in Rosetta and live on phet-server. There were quite a number of other changes made at the same time because Rosetta was in a broken state when this issue became a priority, so we'll need to keep an eye on it. @zepumph - I believe that it is now safe to deploy sims with a11y keys in their string files, so I'm going to assign this to you. I would suggest leaving this open until such a deployment has been done and the behavior of Rosetta is verified, including at least one successful submission of a translation by an outside user on a sim where the a11y strings were present. |
We will go ahead with converting molarity to this new system, see phetsims/molarity#205 for more info. I'm ready to close this issue, and just create new ones if anything comes up, but over to @jbphet just to make sure that sounds good. |
@zepumph said:
I'd prefer not to close this one just yet. I won't feel like we have fully closed the loop until we have tested the live version of Rosetta using a sim with a11y strings that has been deployed to the production web site. @zepumph - I'm happy to do this verification, but I'll need to know when that deployment has occurred. I'm assigning the issue back to you, please just send it back to me when the Molarity sim is live with a11y strings and I'll take it from there. |
I just received word that Molarity has been published with the a11y strings in place, so I tested that Rosetta is correctly ignoring the a11y by first going to the translation URL, selecting Molarity+German (resulting URL = https://phet.colorado.edu/translate/sim/molarity/de), and verifying that none of the a11y strings were presented to the user. I then examined Rosetta's output log on phet-server using the command
All indications are that the ignoring of a11y strings by Rosetta is working correctly, so this issue can be closed. |
From #193,
We are currently on a branch adding support for a11y strings, via nested objects under the
a11y
key. Before we merge to master, we need to add code to rosetta that ignores the string key "a11y".I don't know what this will entail, so I'm going to assign this over to @jbphet. Hopefully this is a small change that can be added to master and published to the server relatively soon so that I can finish up string conversions for all a11y strings files over in phetsims/friction#180 while things are fresh mind. Thanks!
The text was updated successfully, but these errors were encountered: