I created a Transifex organization & project for a better and more streamlined translation experience.
While the project is public, joining it requires approval from me or @DKFN on Transifex.
This PR changes the translation files for compatibility with Transifex. The new approach uses only a single object (instead of nested objects) and string keys are prepended with the relevant component names in CAPITALS. This is however not enforced by styling or linting, it's just a new practice to keep the key names better organized.
So previously:
{
"app": {
"fatal_error": "A fatal error occurred, UI will not refresh!",
}
}
Now:
{
"APP_fatal_error": "A fatal error occurred, UI will not refresh!",
}
Translation pipeline now looks like this:
Code change requires new strings and we add these new strings into the English translation file directly in code
I perodically check and update this file on Transifex which automatically adds it to every other language for translation
People translate and review the available strings
Before a release happens I export the translated versions from Transifex and make a PR about it
Ideally I would automate the import/export from Transifex, but that requires Github org access so it's probably gonna be a later addition.
I created a Transifex organization & project for a better and more streamlined translation experience.
While the project is public, joining it requires approval from me or @DKFN on Transifex.
This PR changes the translation files for compatibility with Transifex. The new approach uses only a single object (instead of nested objects) and string keys are prepended with the relevant component names in CAPITALS. This is however not enforced by styling or linting, it's just a new practice to keep the key names better organized.
So previously:
Now:
Translation pipeline now looks like this:
Ideally I would automate the import/export from Transifex, but that requires Github org access so it's probably gonna be a later addition.