Difference between revisions of "Translation How-To"
Haaihenkie (talk | contribs) |
Haaihenkie (talk | contribs) (→French / Français) |
||
Line 34: | Line 34: | ||
* [http://www.freeplane.org/forum2012/viewtopic.php?f=1&t=69&sid=6fe29d34506a47b7f1b2942e19cc0a22 Old forum thread 1] | * [http://www.freeplane.org/forum2012/viewtopic.php?f=1&t=69&sid=6fe29d34506a47b7f1b2942e19cc0a22 Old forum thread 1] | ||
− | * [https://sourceforge.net/projects/freeplane/forums/forum/758437/topic/3496807 | + | * [https://sourceforge.net/projects/freeplane/forums/forum/758437/topic/3496807 Old forum thread 2]. |
=== Flemish/Dutch / Nederlands/Vlaams === | === Flemish/Dutch / Nederlands/Vlaams === |
Revision as of 19:45, 12 August 2016
This page will give you all the information you need to translate Freeplane into your own language.
Contents
Freeplane translation (translation of the Graphical User Interface -GUI-)
(These are all the strings displayed in Freeplane program, especially in menus and dialogs)
Weblate online translation tool for translating the stable/development version
For coming version 1.3.x Freeplane uses a new collaborative web based translation tool developed by Michal Čihař. Please note:
- the english is Freeplane default language and can not be translated in weblate but directly in Git
- to be able to translate, you need to know english because in weblate "template strings" to translate are english ones
- the translation is done for the "release" branch, currently 1.3.x branch (translation of master branch can be done throught Git)
Register and submit your FreePlane translations here.
If you are faced to bugs on the weblate tool, you can report them here.
How to test your weblate translations:
- https://hosted.weblate.org/projects/freeplane/translation/
- choose <language>
- choose Files
- click "Download", save freeplane-translation-<lang>.properties
- copy freeplane-translation-<lang>.properties to <fpuserdir>/1.4.x/resources/translations/Resources_<lang>.properties
- restart Freeplane
Discuss translations in your native language
If you feel the need to discuss translations to your native tongue you can do so in your native language on the forum. Always search if there is already a thread for your language. Here is is an incomplete list of forum threads and pages related to the translation to different languages.
French / Français
You can have a look at:
Flemish/Dutch / Nederlands/Vlaams
- You can consult Translation nl for general guidelines
- Your can post your questions, remarks and requests in this thread
- This is an old thread on Dutch documentation
Frequently Asked Questions / Tips for translators
- While running Freeplane, why are some strings ending with "[translate me]"?
- As long as a key is missing in a translation, Freeplane automatically uses "<English text> [translate me]" as translation. Translators should translate these strings in priority and then remove "[translate me]".
- Why are strings ending with "[auto]"?
- Translation files can be submitted to an automatic translation tool, then strings of type "<English text> [translate me]" becomes strings of type "<local language text> [auto]". Translators should search and review these strings and then remove "[auto]".
- Why is there sometimes space before values?
- spaces before values are ignored, don't care.
- Why is there & character before some values (sometimes "in" the words)?
- the ampersand (&) is used to mark keys in the menu (i.e. open the menu, press the key/letter to activate the menu entry) - while translating, you need to make sure that each letter is only used once per menu.
- Some values begins by <html> with no </html> at the end?
- Java accepts unclosed tags - don't care.
- Some keys are not used / displayed in the software
- you should stay aligned with the English version to be on the safe side, but if keys are not used, it's a bug you can report it here.
- When testing Freeplane with my translation file, some menus are missing or some buttons have no label, why?
- If you leave any empty keys in the file, Freeplane assumes they are valid translations and displays nothing. There are differences between "empty key in the translation file" which displays nothing and "missing key in the translation file" which displays "<English text> [translate me]" (see above).
- Your translation is truncated
- If your translation is truncated when displayed, it may contains a ' (apostrophe) character (e.g. Freeplane displays "Copier l" instead of "Copier l'identifiant"), you may simply enter the ' character twice (ie "Copier l"identifiant") as translation, where " is twice the character '. Most of the time, ' apostrophe characters should be handled as in the English version (for some strings which are used in format statements put them twice, for other strings put them once).
Translation of Freeplane add-ons
Add-ons manage their translations on their own, i.e. the translations are integrated into the add-on sources. Nevertheless, it's simple to translate an add-on by editing the add-on installation package in Freeplane and modifying the translations therein. If the translations contain non-ASCII characters you have to encode the text using a script, either from the Developer Tools (since version 0.9.16) or from here.
For more details see Add-ons_(Develop#Translations.
Translation of third party tool used in Freeplane
JOrtho spell checker
For spell check Freeplane relies on JOrtho project. JOrtho translation file contains very few strings and only 5 are used in Freeplane but if you want to translate this file too, you can get it at its current location.
Translation of Tutorial or Documentation maps
These are the mind maps you get when you press Help → Tutorial (freeplaneTutorial.mm) and Help → Documentation (freeplane.mm).
Basic steps
- Create a working directory myTranslations.
- Copy the most recent English documentation from http://freeplane.sourceforge.net/mapsOnline. For this choose Help > Documentation Maps Online and select the map of your choice; or copy your last translation.
- make a subdirecory structure for images: myTranslations/doc; (if you use these, also myTranslations/mouse and myTranslations/key).
- Copy images you reuse or put new images you use in myTranslations.doc (possibly also myTranslations/mouse and myTranslations/key).
- Edit your translation. Drag your images from the defined subdirectories into your translation (assuming URI's are relative).
- Test the translation, in particular the images.
- Zip directory myTranslations.
- Select Help > report a bug, select new report of type translation and upload the zip file.
Note Check Help > Documentation Maps Online > indexMap > Images/doc for the images used in the present doc mind maps.
Old
- Download the latest version of freeplane.mm and FP_MenuReference.mm (or an already existing versions in your language) from the repository.
- The current link is https://github.com/freeplane/freeplane/tree/master/freeplane/resources/translations/ (but check if it's not an outdated link)
- Visit pages http://freeplane.sourceforge.net/doc/freeplane_all_languages.html and http://freeplane.sourceforge.net/doc/FP_MenuReference_all_languages.html to see how the documentation is automaticly translated by Google Translate.
- Using the latest development version of Freeplane, just create a map in your language (or complete the one already existing).
- As it's almost impossible to track differences between maps and ensure an exact one to one relationship between the languages, we don't expect this from translators.
- To track changes of freeplane.mm filters can be useful: Open the file in normal mindmap mode (not via F1) and apply a "Date filter" with the modification time set to the last time you have edited the translated map.
- Just make sure that the map is consistent with the current version of Freeplane, as complete as possible and helpful to users.
- Go to the tracker (requires Sourceforge log-in) and upload your map (the Project should be set to Translations).
Keys Mapping translation
TBD
Java Help translation
TBD (the current version doesn't allow for localization). Hint for later: http://jhelpdev.sourceforge.net/