This wiki has been moved to into the mediawiki branch.


From SuperTux
Revision as of 16:13, 20 October 2006 by Sommer (Talk | contribs)

Jump to: navigation, search

How to Translate

  1. Check at the end of this site if someone else is already working on the translation for your language. If there is someone contact him/her!
  2. If you already have messages.pot files you can skip this step. If you don't already have messages.pot files (the files that contain all the text that can be translated) you can have them created for you by following these instructions:
    • Install gettext
    • Get an SVN snapshot of SuperTux and do the usual, configure. Make sure configure can find the xgettext application. (i.e. "checking for xgettext... xgettext" and "checking if xgettext supports Lisp... yes")
    • Run jam, let it compile SuperTux and create all the messages.pot files
  3. Create or update the .po files for your language. Many GUI tools (see below) will help you with this, so if you indend to use one you can skip this step. Here's how to do things yourself:
    • Go into data/locale and data/levels/*/ and in each of those directories:
      • In case you want to create a new translation, run msginit -i messages.pot -o $LANG.po (where $LANG is the two-character handle of your language)
      • In case you want to update an existing translation, issue the following command: msgmerge -U $LANG.po messages.pot
  4. Edit the .po files with your favourite editor or with one of the GUI tools below.
  5. You should also edit the supertux.desktop file and add a comment entry for your language.
  6. Send the translated .po files to the supertux-devel mailing list.

Notes for Translators

  • If there isn't a good translation for some term (i.e. fullscreen), you might consider to simply keep it in English. It's better than confusing the user.
  • In English, there is only one singular second person form (you). If your language has more than one - a personal and impersonal - remember that this is a game, so you should use the personal one. Note that if it can be omitted your language, you should probably do so.
  • Names like SuperTux, Tux, Penny or Nolok should not be translated. If you really think one of these is too strange for your language, first inform us on our mailing list. Names of minor characters like Mr. Ice Block can (and should) be translated.
  • If somewhere in the game, after translating a string, it doesn't look well (bad aligment, overlaps other text...), let us know and we will fix it.
  • Do not stick to the original text too much, just try to capture the meaning of a phrase.
  • Have a friend play the game using your translation. If any phrase needs additional explanation, consider changing it.


There's a number of tools you can use to edit the .po files:

  • KBabel - matured KDE translation program
  • poEdit - multi-platform po editor (runs on Windows and Unix/Linux)
  • QTranslator - comes with Qt, also multi-platform
  • (X)Emacs - commonly used for translation with the respective plugin
  • Any text editor - of course you can also simply use a text editor. Just make sure the file encoding really matches the stuff stated in the .po header.


SuperTux Milestone 2 supports localization. This means you can play SuperTux in any of the languages supplied with the game, as well as make your own translation.

SuperTux will try to auto-detect what language to display text in. If auto-detection fails or if you want to play in a certain language, you can force SuperTux to use a specific locale by setting the LANG environment variable to the handle of your language (e.g. "en"; see the following sections for all available languages).

Setting an environment variable can be done in a number of ways, depending on your operating system.

Linux users might run

LANG="en" ./supertux

Windows users might run

set LANG=en

Existing Translations

Please add yourself to this list if you are working on a new translation, so that others can contact you.

Language Code Translator In
Catalan ca Antoni Villalonga <>
Czech cs Ondra Hosek <> 0.3.0 r4415
Danish da Anders <anders §> 0.3.0 r4415 100%
German de Matthias Braun <>, Marek Möckel 0.3.0 r4415 99%
French fr Frederic Rodrigo <>  ?
Italian it Iknos <>  ?
Dutch nl Frank van der Loo <>  ?
Norwegian Nynorsk nn Karl Ove Hufthammer <> 0.3.0 r4415  ?
(European) Portuguese pt Ricardo Cruz <>  ?
(Brazilian) Portuguese pt_BR Herval Ribeiro <> 0.3.0 r4415 100%, sugestões são bem vindas. ;)
Polish pl Tomasz Boczkowski <> work in progress
Slovenian sl Marko Burjek <email4marko AT gmail DOT com> 0.3.0 r4415 90%
(European) Spanish es Fernando Carmona <ferkiwi § gmail .com> 0.3.0 r4415 work in progress
Swedish sv Arvid Norlander <anmaster (AT) berlios DOT de> 0.3.0 r4415 not 100% complete