HowToTranslateAlexandria

Administration

Discussion of translations and internationalization issues takes place on the alexandria-i18n-list http://rubyforge.org/mailman/listinfo/alexandria-i18n-list

Cathal Mc Ginley, one of the administrators of Alexandria, also co-ordinates the translation team. If you don’t have SVN commit access, you should e-mail your translations to him.

NOTE: must let them know how to get the e-mail address, without actually including it

Gettext

In common with most internationalized free software, Alexandria uses ‘gettext’ for localization. Most GNU/Linux distributions will have the GNU gettext package already installed. The gettext manual gives an excellent introduction to this system: http://www.gnu.org/software/gettext/manual/

The short version is, translators only have to translate the user-visible strings; these are gathered together in a single PO file.

The PO file will be named after the locale you are translating for. This is usually just the ISO language code (e.g. ga, nl), but sometimes includes the country code too (e.g. pt_BR, zh_TW). So, for a Galician translation, the PO file will be gl.po

We start with a blank ‘PO Template’ called alexandria.pot (generated from the latest program sources). Grab the current version here: http://www.gnostai.org/tmp/alexandria-0.6.2/alexandria.pot You can just rename it to gl.po and start working on it.

Actually, you should generate it from the latest SVN (cd po && make alexandria.pot), but this is good enough for now.

There are a couple of programs available to help you work with the PO file:
  • If you use GNU Emacs, there is po-mode (optionally installed as part of GNU gettext-tools). This is slightly complicated, but powerful.
  • For GNOME, there is Gtranslator which seems quite easy to use.
  • For KDE, KBabel is the commonly used program.

Translating for Alexandria

For each msgid in the PO file you enter a translated msgstr. You save the modified PO file, and test it with a development version of Alexandria. (See “Getting Started with Alexandria Development” http://www.gnostai.org/journal/2007/12/28/getting-started-with-alexandria-development/ for more information.)

Then, from the SVN checkout of alexandria, run these commands:

    sudo rake install
    LANG=ga_IE alexandria

In any case, you can do a lot of translation even before setting up your test environment. When your translation is done (or partially done) send the PO file to Cathal Mc Ginley, who will integrate it.

Translating comptuter-style phrases can be a real pain: the sort of technical language and very terse style can be very hard to deal with in non-English languages. You might look at other free software which is already translated into your language, that might give you an idea of how some common terminology is used. (In the future, hopefully we can change the language of the user-interface to make it easier to translate.)