User Tools

Site Tools


Here are the steps to allow you to translate Earwigo's messages, prompts, etc into your language.

1) Set the language in your profile to the language which you want to translate. You will see that, when a translation is not available, you get the English text.

2) Ask Nick to give you the system privileges to be a translator (and say for which language). :-)

3) Once you are a translator, most untranslated strings will be enclosed in this HTML code:

<div title="t_bla_bla_bla">?bla bla?</div>

This means that the English text will be enclosed in '?' characters, and if you hover your mouse over it, you will see “t_bla_bla_bla”, which is the translation “tag”.

For some strings, such as tab labels and buttons, the name of the tag will appear directly after the English text, inside square brackets. This looks horrible, so you will want to translate those strings first!

4) Build a text file with the following structure on each line:

t_bla_bla_bla <tab> Translation of bla bla bla

That means: the tag (starting in column 1); a single tab character (do not type something like “<tab>”); and the translation. You can optionally add a second tab character and then the English text, or anything else you like. See also paragraph 8), below.

5) Go to, select the language and the text file which you just created, and click Submit. Any translations which you submit will remain your copyright, but you grant me (Nick) a non-exclusive, transferable license to do anything with it that I feel like. (I promise not to do anything evil with it.)

6) Note that translation is recursive. If a tag name appears inside braces {}, it will be translated further. So, for example, you can put {t_product_name} in a translation and it will insert your local translation of “Earwigo - the Wherigo™ Web Builder”.

7) If you want the translation of a tag to be a completely empty string, you can't just leave the translation “column” (after the tab character) blank. That's a security measure; blank translations are ignored, which means that you can have one master file with all the tags in it and upload it from time to time as it evolves, without the risk of accidentally trashing a translation done by someone else. If you want a tag to be translated by an empty string, set the translation value to {t_empty}. This uses the recursive translation described in the above paragraph. Note that you can't change the value of the t_empty tag - it is one of a small number of tags that have a “universal” (fixed) translation.

8) At any time, at the same URL (, instead of uploading a file, you can use the checkbox marked “Export translations” to ask the system to create a text file containing the tags, their current translation, and the English text, one per line, in the correct format for re-importing (that is, separated by tabs). Because you will typically add your new translations to the middle of each line (in between the two tab characters), it can be useful to paste this text file into a spreadsheet, add your translations in the second column, and tnen copy the data back to a text file before uploading. This works with Excel, which uses tabs as column separators when pasting data from a text file, and I'm assuming that other spreadsheet software should work similarly. Note that when you import translations, everything after the second tab (if any) on a line is ignored, so you can leave the original English text in your text file.

how_to_translate.txt · Last modified: 2015/01/25 13:07 by nick