1. Using XMLmind XML Editor to translate the messages

  1. Use OptionsInstall Add-ons to install the add-on called "Translate XMLmind XML Editor" then restart XMLmind XML Editor (XXE for short).

  2. Select FileTranslationNew to create a new translation from scratch.

    Or select "FileTranslationOpen Message Jar or Add-on Zip" to update an existing translation. The existing translation is either found in a message Jar (example: fr_translation.jar) or in an add-on Zip (example: fr_translation.zip, itself containing fr_translation/fr_translation.jar and fr_translation/fr_translation.xxe_addon).

    In both cases, you'll be prompted for a target language. This target language is specified using a two-letter ISO 639-1 language code (examples: fr, de, es, it). Three-letter ISO 639-2 language codes are not supported (examples: fra, deu), neither are the combinations of a language code and a country code (examples: fr-CA, de-AT).

    Both the two aforementioned menu items create a new[1] XLIFF document. This document cannot be modified, except for the messages in the target language.

  3. Use the following toolbar buttons: (first empty field), (last empty field), (previous empty field), (next empty field) to navigate between the messages to be translated.

    These buttons automatically skip the low-level, technical, messages which are not worth translating. In the above screenshot, section "com/xmlmind/guiutil/Messages.properties", expanded, having a green title, contains messages which are worth translating, while section "com/xmlmind/xml/dtd/Messages.properties", collapsed, having a red title, contains messages which are not worth translating.

  4. You may want to use the (translate selection or message) toolbar button in order to get some help. This button invokes your web browser in order to open the Google Translate page containing the translation of the current message[2] to the target language.

  5. Translate all the messages found the “recommended sections” (expanded; green title). See Section 3, “How to correctly translate a message”.

  6. After translating the messages, you may want to review what you did using the following toolbar buttons: (first filled field), (last filled field), (previous filled field), (next filled field).

  7. Testing your translation is easy: select "FileTranslationSave As Message Jar" to save the XLIFF document as a message Jar (example: fr_translation.jar), make sure that the message Jar is found inside one of the two addon/ directories scanned by XXE during its startup, then restart XXE[3].

    If, after restarting XXE, you don't see its user interface translated to the target language, then this means that the locale of your computer (example: en-US) does not correspond to the target language (example: fr). When this is the case, use OptionsPreferences, General section, to change the locale used by XXE from "(default)" to the locale corresponding to the target language (example: "français").

  8. Finally select "FileTranslationSave As Add-on Zip" to save the XLIFF document as a ready-to-deploy add-on Zip (example: fr_translation.zip).

    You'll be prompted for the name of the author of the add-on. A string starting with "mailto:" (example: "mailto:jane@doe.name") gets a special treatment. A string starting with "<html>" and followed by well-formed, properly escaped, XHTML (example: "<html><a href='http://www.doe.name/'>Jane Doe &amp; al.</a>") also gets a special treatment. Otherwise, the string is understood to be plain text (example: "Jane Doe & al.").



[1] This means that the first time you'll save the XLIFF document to disk, you'll be prompted for a save filename.

[2] The current message is the message containing the caret (also called “insertion cursor”). Note that if there is an explicit text selection, then the current message is ignored and instead the text selection is submitted to Google Translate.

[3] "Save As Message Jar" is smart enough to automatically clear the Quick Start cache when needed to (see OptionsPreferences, Advanced|Cached data) .