Difference between revisions of "User:Kebap/translation infrastructure"
Jump to navigation
Jump to search
m (+Instructions from other project's translations) |
(→Updating input strings: section added) |
||
Line 1: | Line 1: | ||
− | History | + | {{Toc right}} |
+ | |||
+ | == History == | ||
* https://github.com/Mudlet/Mudlet/issues/856 - Setup a web-based translation service for Mudlet | * https://github.com/Mudlet/Mudlet/issues/856 - Setup a web-based translation service for Mudlet | ||
* https://github.com/Mudlet/Mudlet/issues/1664 - Translation infrastructure of Mudlet web-presences | * https://github.com/Mudlet/Mudlet/issues/1664 - Translation infrastructure of Mudlet web-presences | ||
− | Main sources of text | + | == Main sources of text == |
* Mudlet client itself | * Mudlet client itself | ||
Line 12: | Line 14: | ||
− | Processes for each | + | == Processes for each == |
# Find out a way to tell outdated texts from relevant current texts which need translation. | # Find out a way to tell outdated texts from relevant current texts which need translation. | ||
Line 26: | Line 28: | ||
− | References | + | == References == |
* Another great in-depth look at several alternatives and the process in general in this master study thesis about “Translations in libre software”: https://larjona.wordpress.com/translations-in-libre-software/ | * Another great in-depth look at several alternatives and the process in general in this master study thesis about “Translations in libre software”: https://larjona.wordpress.com/translations-in-libre-software/ | ||
Line 44: | Line 46: | ||
− | Decisions | + | == Decisions == |
* We want to use US English in the source. Sometimes it is still en/GB - e.g. "licence/license", "color/colour", etc. SlySven will provide a dedicated en/GB translation, but origin will be en/US | * We want to use US English in the source. Sometimes it is still en/GB - e.g. "licence/license", "color/colour", etc. SlySven will provide a dedicated en/GB translation, but origin will be en/US | ||
Line 50: | Line 52: | ||
* Some texts can't be translated easily in Crowdin, as they are surrounded by < and > for example. This needs to be adjusted in source. See [https://github.com/Mudlet/Mudlet/pull/1804 PR #1804] for example and possible solution. | * Some texts can't be translated easily in Crowdin, as they are surrounded by < and > for example. This needs to be adjusted in source. See [https://github.com/Mudlet/Mudlet/pull/1804 PR #1804] for example and possible solution. | ||
** Some IRC texts start with ! or alike symbols which must not be translated. Compare above solution. | ** Some IRC texts start with ! or alike symbols which must not be translated. Compare above solution. | ||
+ | |||
+ | |||
+ | == Updating input strings for translation == | ||
+ | |||
+ | * Using Qt Linguist: http://doc.qt.io/qt-5/qtlinguist-index.html | ||
+ | * command will pull strings from Mudlet client's sources and put into mudlet.ts | ||
+ | * command is: lupdate.exe -recursive .\src\ -ts .\translations\mudlet.ts | ||
+ | * lupdate is available during [[Compiling_Mudlet#Compiling_on_Windows_7.2B|Windows compilation]] in this folder: C:\Qt\5.11.0\mingw53_32\bin\ |
Revision as of 01:06, 19 August 2018
History
- https://github.com/Mudlet/Mudlet/issues/856 - Setup a web-based translation service for Mudlet
- https://github.com/Mudlet/Mudlet/issues/1664 - Translation infrastructure of Mudlet web-presences
Main sources of text
- Mudlet client itself
- Mudlet website
- Mudlet wiki
- "other" spontaneus texts need to be included manually
Processes for each
- Find out a way to tell outdated texts from relevant current texts which need translation.
- Get texts out of sources (see above). Can this be automated with any tool? Who should be responsible?
- Get texts in to translation tool.
- Translating inside tool (ok this is to be expected, but also needs good interface and workflows)
- Translators report confusing strings back to Mudlet team with information how they need to be adjusted.
- Mudlet team updates text in source. Either because of reports, or because of natural evolution.
- Updated texts from source need updates in translation tool. Export and import again, plus diff.
- Translated texts will be finished. Export them from translation tool. Automation again?
- Import translated text to source.
- Display of translations in source. Here we will need some sort of language toggle switch in each source.
References
- Another great in-depth look at several alternatives and the process in general in this master study thesis about “Translations in libre software”: https://larjona.wordpress.com/translations-in-libre-software/
- multilingual plugins for Wordpress: https://wordpress.org/plugins/search/multilingual
- Polylang: https://wordpress.org/plugins/polylang/
- Wordpress internationalisation workflow
- integration to Crowdin
- Mediawiki
- Github
- Notes from other translation efforts
- Instructions from other project's translations:
Decisions
- We want to use US English in the source. Sometimes it is still en/GB - e.g. "licence/license", "color/colour", etc. SlySven will provide a dedicated en/GB translation, but origin will be en/US
- When a language offers multiple choices on how to address the reader, we will choose the less formal, more friendly way
- Some texts can't be translated easily in Crowdin, as they are surrounded by < and > for example. This needs to be adjusted in source. See PR #1804 for example and possible solution.
- Some IRC texts start with ! or alike symbols which must not be translated. Compare above solution.
Updating input strings for translation
- Using Qt Linguist: http://doc.qt.io/qt-5/qtlinguist-index.html
- command will pull strings from Mudlet client's sources and put into mudlet.ts
- command is: lupdate.exe -recursive .\src\ -ts .\translations\mudlet.ts
- lupdate is available during Windows compilation in this folder: C:\Qt\5.11.0\mingw53_32\bin\