Skip to content
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

Update devGuide for translating symbols, gestures, character descriptions #17590

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

seanbudd
Copy link
Member

@seanbudd seanbudd commented Jan 7, 2025

Link to issue number:

Closes #16372

Summary of the issue:

Dev guide is out of date on translating symbols, character descriptions and gestures. It refers to the SVN process which is now deprecated. We only accept changes to these files via PR now.

Description of user facing changes

Update dev guide to refer to opening a PR rather than using SVN.

@seanbudd seanbudd requested a review from a team as a code owner January 7, 2025 03:36
@seanbudd seanbudd requested a review from SaschaCowley January 7, 2025 03:36
projectDocs/dev/developerGuide/developerGuide.md Outdated Show resolved Hide resolved
projectDocs/dev/developerGuide/developerGuide.md Outdated Show resolved Hide resolved
@@ -93,7 +93,8 @@ The file contains two sections, [complex symbols](#complexSymbols) and [symbols]

#### Translating this file {#TranslatingSymbolsFile}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd move this paragraph at the end. Indeed the sentence before announces the two next paragraphs.

@CyrilleB79
Copy link
Collaborator

Please communicate with translators mailing list before merging. You may have valuable feedback.

Regarding my general personal feedback (already done in the past when transition to Crowdin was discussed):

  1. I agree that updating local gestures.ini through GitHub makes sense: writing this file requires to know NVDA's code, namely the classes where original gestures are defined. And I make the assumption that translators that have modified this file recently also have a certain knowledge of NVDA's code. Moreover, if a translator needs the help from an NVDA code contributor to identify the appropriate NVDA class, to write an updated gesture file or to make a PR, this is acceptable since gesture files are not modified so frequently and are modified only in a few languages.

  2. I agree that modifying the character file can be done through GitHub. These files are almost never modified once created. If a translator wants to add a character description file for a new language, a code contributor can help him/her or do it for him/her since this occurs very rarely.

  3. Regarding the symbol file, I am not so convinced that GitHub is suitable, even if I have no other option to suggest. The symbol file is updated more frequently than the two other files and for all languages. I expect that with the switch to GitHub, more languages local files will not keep up to date with the English file. The question is "When symbols are added or modified in the English file, who will make a PR to update language xy"? Translators, NVDA code contributors, NV Access? We cannot expect every translator to install NVDA source environment (NVDA Git local repository, Visual Studio, etc.). The corresponding section of the dev guide links to https://github.com/nvaccess/nvda/blob/master/projectDocs/dev/contributing.md, which is very general. If I was a non-dev translator, I would not know where I should begin from to update a symbol file. Also in SVN translators were notified of changes in the English symbol file. Now, for each release, they would need to do a git diff on this file to see what has changed. Or could NV Access send this information on the translators mailing list when NVDA enters the beta phase as well as each time the file is updated during the beta phase?

Please communicate with translators mailing list before merging. You may have valuable feedback.

Regarding my personal feedback (already done in the past when transition to Crowdin was discussed):

  1. I agree that updating local gestures.ini through GitHub makes sense: writing this file requires to know NVDA's code, namely the classes where original gestures are defined. And I make the assumption that translators that have modified this file recently also have a certain knowledge of NVDA's code. Moreover, if a translator needs the help from an NVDA code contributor to identify the appropriate NVDA class, to write an updated gesture file or to make a PR, this is acceptable since gesture files are not modified so frequently and are modified only in a few languages.

  2. I agree that modifying the character file can be done through GitHub. These files are almost never modified once created. If a translator wants to add a character description file for a new language, a code contributor can help him/her or do it for him/her since this occurs very rarely.

  3. Regarding the symbol file, I am not so convinced that GitHub is suitable, even if I have no other option to suggest. The symbol file is updated more frequently than the two other files and for all languages. I expect that with the switch to GitHub, more languages local files will not keep up to date with the English file. The question is "When symbols are added or modified in the English file, who will make a PR to update language xy"? Translators, NVDA code contributors, NV Access? We cannot expect every translator to install NVDA source environment (NVDA Git local repository, Visual Studio, etc.).

@zstanecic
Copy link
Contributor

Hi there!
I agree here with @CyrilleB79
Regarding the translation of the symbols file, I disagree it moving to github.
We don't know, and will not know, what changed via any means of diffs.
Translator is often not a programmer, and translators should have a straightforward way to update symbols.

@michaelDCurran
Copy link
Member

michaelDCurran commented Jan 7, 2025 via email

@CyrilleB79
Copy link
Collaborator

Also in SVN translators were notified of changes in the English symbol file. Can you explain this further. How exactly were translators notified about this file? Do you mean just reading svn log, or were there specific notifications sent when the english symbols.dic was updated?

In SVN, we have:

  • An e-mail sent when any new translation is merged to SVN indicating which file is modified, including symbol file. In Crowdin we have no e-mail notification anymore, but we still can look at the % translated in Crowdin interface (exception made of the doc strings that are the same as English, but it's not the topic here.
  • Each diff on the symbol file listed in SRT\fr\symbols-newRevisions, which is quite easy for the user to just focus on new content to translate, and also to keep track of what he/she has already translated and which modification still remains to translate.

I agree it is overkill to expect translators to have to create an entire NVDA source environment for symbols. But until we have a suitable alternative, this is how it is.

@seanbudd seanbudd added the blocked/needs-product-decision A product decision needs to be made. Decisions about NVDA UX or supported use-cases. label Jan 9, 2025
@CyrilleB79
Copy link
Collaborator

I agree it is overkill to expect translators to have to create an entire NVDA source environment for symbols. But until we have a suitable alternative, this is how it is.

I am not satisfied with this answer. I have not answered the poll regarding the technical documentation of NVDA. But if this PR is merged as is, I will answer it if it is still available, with a negative feedback.

The problem is that the majority of translators are not developers. Thus the translator should be able to read documentation to provide their translations without having to deal with a heavy developer process/environment.

Cc @gerald-hartig for opinion

@LeonarddeR
Copy link
Collaborator

I'm tempted to agree with @CyrilleB79 here. I"m worried that for many translators, switching from SVN to GIT will be overly complex.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked/needs-product-decision A product decision needs to be made. Decisions about NVDA UX or supported use-cases.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update translation documentation after migration to Crowdin translation platform
5 participants