====== Working with Poeditor.com ====== ===== Join the Project ===== Request to join the POEditor Evergreen project. An Evergreen admin will need to approve you before you can add translations. If you want to help with the translation process, ask on the Evergreen General email list. * [[https://poeditor.com/join/project/2FlOsiPYag|Join Evergreen on POEditor]] ===== Making strings available for translation ===== You will need to be an admin in poeditor.com in order to do the following steps. To upload new strings to poeditor.com: - In the ''Open-ILS/src/eg2'' directory, run ''npm run export-strings''. The output file is ''Open-ILS/src/eg2/locale/messages.xmb''. - Go to [[https://poeditor.com/projects/import?id=218177|the importer]] - Upload the ''Open-ILS/src/eg2/locale/messages.xmb'' file. Be sure to enable "Also import translations to a language" and select English (this will keep English at 100% translated):{{:screenshot-import.png?800|}} - Be sure to add tags - you should have **TWO RULES**: one rule to add the base version (rel_3_12) to **all** translations and a second rule to add the specific version (rel_3_12_0) to **new** translations. The use of a tag like rel_3_12_0 for new terms is done purely as a convenience to the translators to identify the strings that are new to the release. However, it should be noted that the definition of "new" applies to the entire translation project. For example, if you upload new terms for rel_3_11_beta, then upload for rel_3_10, rel_3_10_x, a new terms that are already tagged rel_3_11_beta will not get the tag rel_3_10_x. - Go to the [[https://poeditor.com/projects/import_translations?id_language=43&id=218177|English language importer]] and import the xmb file, making sure to not overwrite old translations. Unlike the first step, which appears to just load the numeric IDs of the strings to be translated, this step also adds their English-language values. ===== Adding/updating translations to Evergreen ===== If a translation is sufficiently complete, in POEditor go to the language, then export it as an ''.xtb'' file. The result should be committed to the path ''Open-ILS/src/eg2/src/locale/'' as ''messages.$LANGUAGECODE.xtb''.