How to contribute translations to FreeMind follows.
Getting a SourceForge user
To get a SourceForge user, visit creation page, unless you already have a user. (You need a SourceForge user to post your translation to Translations tracker, as described below.)
Getting the latest translations
Choosing the editing tool
Translation files can be edited using variety of tools.
Popeye Screenshot | Download can deal with several language property files at the same time, so you can contrast the original property file data with their translations. Also, the program can highlight all properties that do not have a translation set in one of the selected languages.
PropeditScreenshot can directly edit property files written in Unicode reference characters, thereby saving the time and effort of converting into Unicode through native2ascii. Its plugin is integrated with Eclipse and JBuilder. Files can be opened in the IDE and saved in Unicode. See also Propedit project page.
Plain text editor
A plain text editor is the tool of choice if you are well acquainted with them and prefer them. If so, you already probably have your favorite tool. If not, these tools include Microsoft Notepad, Notepad++, Vim, Emacs and a vast variety of other tools.
Using plain text editor is more tricky in that the language translation files are using Java unicode notatiton, encoding a single non-latin character like \u4567, making the file less readable. A workaround is to convert the language file into UTF-8 encoding first, then edit it, and finally convert to Java notation again. The conversion is described in the following section. Once the text is in UTF-8 encoding, tools like Microsoft Notepad can be used, and the non-latin characters are shown as you would see them in a WYSIWYG editor. However, various plain text editors differ in their capability to show UTF-8 characters. Notepad on Windows XP is definitely able to do that.
Converting between Unicode notations
To convert a file in UTF-8 into \uXXXX Unicode escape notation, you may use native2ascii tool included with the Java SDK. Example of use (Resources_cs.properties.txt is before conversion):
cd C:\j2sdk1.4.2\bin> native2ascii.exe -encoding UTF8 Resources_cs.properties.utf8.txt Resources_cs.properties
Ideally, your file's name will be Resources_xx.properties, where xx is the code of the language (e.g. en, de, dk etc.).
To convert \uXXXX Unicode encoded file back to UTF-8, use a command similar to the following.
cd C:\j2sdk1.4.2\bin> native2ascii.exe -reverse -encoding UTF8 Resources_cs.properties Resources_cs.properties.utf8.txt
Translate with PO tools: Virtaal and prop2po
You can also use a traditional PO translation tool such as Virtaal if you convert the properties file to PO format.
Now open Resources_xx.properties.po in Virtaal. Set your target language in Virtaal: this ensures that various features like spell checking, translation memory and terminology will be set correctly.
Before you submit or test your translation, you will need to convert it back to Java properties format as follows:
This will convert your PO file into a Java properties file using the English properties file as a template. All Java escaping of Unicode will happen automatically. Submit your properties file as usual.
For menu items, you can set mnemonics by putting "&" character before the letter of the mnemonic in the title of the menu item. For instance, "&Edit" means that the title of the menu will read "Edit" and its mnemonic will be "e". Mnemonic is a keyboard shortcut accessible in various ways; in Windows, either by pressing Alt + mnemonic, or by pressing F10, followed by the mnemonic. Mnemonics are there not only for the leading menus, but also for submenus and menu items.
Registering yourself as FreeMind translator
If you are seriously planning to become a FreeMind translator, and want to receive Call for translations emails from us, please register yourself as translator by subscribing to freemind-translator mailing list. To subscribe, follow this link, and fill in the form.
When to translate
We send a call for translation email after publishing the first release candidate of FreeMind, as at that point we can make sure that only few or possibly none new texts to translate will be added.
A translator can still start creating and posting translations at any point of time, so he or she can distribute the workload in time.
Using new translation in FreeMind
Menu label checklist
State of translation
Currently, we have the following languages translated. The table below is out of date, mapping roughly the state at 0.8.1. It would be very helpful if the translators would update it. Up-to-date information of the state of translation can in any case be found in GIT and in Translations tracker.
The ISO 639-1 language codes can be found in Wiktionary.
Translating the documentation
The freemind.mm file, which is documentation in mindmap format, is a simple XML file. It can be found in your FreeMind installation (eg in Microsoft Windows XP, you'll find it in C:\Program Files\FreeMind\doc). Open the file in a Unicode enabled text editor, and then simply translate everything in the TEXT attribute. For example:
<node COLOR="#000000" CREATED="1124560950701" MODIFIED="1124560950701" TEXT="You can install the applet at your website so that other users can browse your mind maps.">
If you want to use translation memory or a CAT tool, you can now use Swordfish to translate MM files. Swordfish is not free software.
First, create a file named config_map.xml and put the following code in it:
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ini-file PUBLIC "-//Maxprograms//Converters 2.0.0//EN" "configuration.dtd" > <ini-file><tag attributes="TEXT" hard-break="segment" keep-format="yes">node</tag></ini-file>
Then copy this file into the /ini folder of your Swordfish installation (there may be a file by that name already; if so, rename it temporarily).
Run Swordfish and go File -> Convert file to XLIFF format. Remember to select the file type as "XML (Generic)" and the encoding as "UTF8". If you select "Embed skeleton", you may be able to recreate the MM file with a third-party XLIFF editor.
Do you find this page difficult to understand? Are you missing some key information? Tell us.