-
Graphene's GUI repository is bridged with Transifex translation platform for continuous localization.
-
Source language files are updated in real time when text is added or modified in Graphene's repository. Tanslators can choose to be notified on changes.
-
Once a translation is completed, and reviewed by its Language Coordinator, it is automatically pushed to an intermediate repository where the code's syntax preservation is inspected.
-
When all resources for a given language are translated and reviewed they are pushed to the main repository, to be included in the next release.
-
You can join the translation team by requesting resources and language in which you want to participate at https://transifex.com/bitshares. You can create an account for free or simply log in with your Github or Gmail account.
For a translation to be completed we have to work on two different type of files. There's one single file with all the short strings that belongs to the interface itself, and on the other side the markdown help files that are embedded on many sections in the interface.
https://www.transifex.com/bitshares/graphene-ui
-
This file has JSON style key/value pairs. Only values must be translated (justthe text between "double quotes").
-
Some values have placeholders with the format "%(variable)s", those should not be translated. They can be moved inside a string if needed for better grammar, but they should not be modified.
The best practice is to use the Copy source string button and just replace de translatable text.
===
https://www.transifex.com/bitshares/graphene-ui-help
-
These are Github markdown pages. This approach makes translated content highly portable, ready to use on many other interfaces and websites.
-
Actually Transifex does not support markdown format so we have to work with plain text here too. That means each line is parsed as one string. This can be a little annoying but it is worth for the sake of continuous integration.
-
To preserve markdown syntax all symbols must remain where they are: ###. [ ] ( ) ** ** __ __ etc. Here again, when markdown formating is present, using the Copy source string button is very helpful to prevent mistakes.
-
Link names can be translated but we have to preserve paths and filenames. Links looks like this:
[translatable link name](non-translatable/path-to/filename.md)