@@ -61,7 +61,7 @@ The localization coordinator can add the screenshots and map them to the strings
Release an alpha to test translations as the Tor Browser team does. For the websites, we have separated versions with more languages so translators can preview their work.
# Getting your translations added to Transifex
# Getting your translations added to weblate
Imagine a timeline a bit like this:
```mermaid
...
...
@@ -88,37 +88,28 @@ gantt
#### Prepare your files for translation
* Check [Transifex] for supported file types
* Our Tier 1 languages contain languages that are read from right to left (RTL). Make sure that your interface can support that.
* Check [weblate](https://docs.weblate.org/en/latest/formats.html) for supported file types
* Our Tier 1 languages contain languages that are read from right to left (RTL). Make sure that your interface can support that. Remember that RTL also implies page composition, align and all. See https://rtl.wtf/intro/ and https://rtlstyling.com/posts/rtl-styling/ to understand the issue.
* Open a ticket in the component [Community/L10n](https://gitlab.torproject.org/tpo/community/l10n/-/issues) with a link to a file in a repository with your English strings.
* Please attach screenshots for all the strings, or better, upload them to transifex.
* Contact `emmapeel <at> torproject <dot> org` and she will make the bot pick them up and produce two branches on the [translation repository](https://gitweb.torproject.org/translation.git)
* Wait for strings to be added to Transifex and git
* Remember that our translators are volunteers interested to help software be on their language. They are usually just starting to translate and may not have a technical background, so strings with variables or even HTML may lead to errors. Try to make the strings not overtly complicated, or review those strings carefully.
* Transifex does not provide of QA on the strings. You will need to apply your own validation scripts to the strings coming from transifex.
* Please think about [right-to-left languages](https://rtlstyling.com/posts/rtl-styling/).
* Please attach screenshots for all the strings, or better, upload them to weblate.
* Contact `emmapeel <at> torproject <dot> org` and she will make the bot pick them up and produce a branch on the [translation repository](https://gitweb.torproject.org/translation.git)
* Wait for strings to be added to weblate and git
* Remember that our translators are volunteers interested to help software be on their language. They are usually just starting to translate and may not have a technical background, so strings with variables or even HTML may lead to errors. Try to make the strings not overtly complicated, add comments explaining the string, or review the strings carefully.
* Weblate does provide some QA on the strings, but difficult strings can have special checks added. You may need to apply your own validation scripts to the strings coming from weblate.
#### During the translation process
* Please go back to the strings after a while, to see the comments the translators have made on the strings. Translators find errors on the source strings very often. You will need to wait for a new (shorter) round of translations for the strings you correct.
* Translators meet once a month, maybe you want to drop by the next [Monthly Tor Localization Hangouts](./Monthly-Tor-Localization-Hangouts) to explain what your app does and talk to translators.
* You can check the process of your app translation in Transifex, joining the Tor Project there. [Open an account](https://community.torproject.org/localization/becoming-tor-translator/) and ping the Localization Coordinator to get more privileges.
* Please go back to the strings after a while, to see the comments the translators have made on the strings. Translators find errors on the source strings very often.
* You will need to wait for a new (shorter) round of translations for the strings you change. Changing small details for the strings will render them untranslated and create more work. Please only send strings for translation once they are final.
* Translators meet once a month, maybe you want to drop by the next [Monthly Tor Localization Hangouts](./Monthly-Tor-Localization-Hangouts) to explain what your app does and talk to them about the app. This will get translators engaged on your software and you will get alpha testers for free!
* You can check the process of your app translation in weblate, joining the Tor Project there. [Open an account](https://community.torproject.org/localization/becoming-tor-translator/) and ping the Localization Coordinator to get more privileges.
* Remember: translations are always better when translators have access to screenshots and previews. Releasing an alpha version with all the active translations will help translators to spot any errors with their translations.
### Transifex Sandbox
For developers, there is a [sandbox available](https://www.transifex.com/otf/tor-project-sandbox/content/) to test translations and start integration, before having the projects sent to the translators.
If you would like to test your applications there, please [open an account](https://community.torproject.org/localization/becoming-tor-translator/) and ask for access to the L10n Coordinator.
On the Sandbox you will be able to upload translation files and see how the strings look for the translators. Please check that the comments for translators are well placed and understandable.
### Your translations
* Clone the [https://gitweb.torproject.org/translation.git translation repository]
* Check out the branch for your project (e.g. ''git checkout mat-gui'')
* If you only want translations that are completed, check out the ''_completed'' branch instead (e.g. ''git checkout mat-gui_completed''). Currently this branch only provides reviewed strings as well.
'''NOTE:''' Transifex does '''not''' do any kind of input validation on the translated strings. You need to make sure that the strings you include are valid and do not contain anything malicious.
'''NOTE:''' Weblate does '''not''' do much validation on the translated strings. You need to make sure that the strings you include are valid and do not contain anything malicious.