This wiki has been moved to into the mediawiki branch.


From SuperTux
Revision as of 02:01, 19 June 2008 by Newtest (Talk | contribs)

Jump to: navigation, search

How to Translate

  1. Check at the end of this site and on the Issue Tracker 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. You then have two ways to make the templates:
      • Compile SuperTux, making certain CMake finds xgettext.
      • Run the shell script, making certain xgettext is in your path. You may have to edit slightly to enlarge the list of level subsets.
  3. Create or update the .po files for your language. Many GUI tools (see below) will help you with this, so if you indeed 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 supertux.desktop and add a comment entry for your language.
  6. Either send the translated .po files to the supertux-devel mailing list, or upload them to the Issue Tracker.

Notes for Translators

  • If there isn't a good translation for some term (e.g. "Credits" or "Sound"), you might consider to simply keep it in English. It's better to allow users to make an educated guess than to confuse them by displaying meaningless or garbled text.
  • In English, there is only one singular second person form: "You". If your language has more than one - a personal and an impersonal form - 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 Super Tux, Tux, Gown or Nolok shouldn't 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 or Penny 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. This especially true for level names, which often play on phrases only known to english speakers. In this case it's often better to make up a level name that is close to the original, but doesn't use a wordplay.
  • 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
  • Notepad - a microsoft text editor.
  • Word Pad - open a file with .po, save it and open with notepad
  • 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

If setting the environment variable LANG doesn't work, you may try using the variable SUPERTUX_LANG instead.

Existing Translations

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

Language Code Translator In
Catalan ca Martí Bosc <> r4873
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%
(European) Spanish es Fernando Carmona <ferkiwi § gmail .com> 0.3.0 r4415
Finnish fi Yaniel <> Work in progress...
French fr Grégoire Lannoy <fulbert05 at> 0.3.0 r2430 rough translation
Hungarian hu Kővágó Zoltán (DirtY iCE) < (AT) gmail dot com > 0.3.0 r4458
Icelandic is Thorsteinn A. Malmjursson <hammer.of.thor (AT)> 0.3.0 Most messages translated for menus, In game messages and screens still to do. Work in progress.
Italian it Manuela Kessler <exty at> r5181 Posted to mailinglist
Japanese ja Timothy Goya <tuxdev103 (AT) gmail DOT com> Work in Progress
Lithuanian lt Andrius Štikonas <stikonas AT gmail DOT com> r4695 Work in progress...
Dutch nl Frank van der Loo <> r2430 Work in progress...
Norwegian Nynorsk nn Karl Ove Hufthammer <> 0.3.0 100% complete
Norwegian Bokmål nb Karl Ove Hufthammer <> 0.3.0 100% complete
Polish pl Mateusz Janowski <> Work in progress...
(European) Portuguese pt Ricardo Cruz <> r2430 Translation outdated, translator unreachable
Portuguese (Normal) pt Liudas Dmitrijevas
(Brazilian) Portuguese pt_BR Herval Ribeiro <>

updated for 0.3.1 by Krishnamurti Lelis Lima Vieira Nunes

0.3.0 r5389 100%, sugestões são bem vindas. ;(
Romanian ro Dajboc Razvan < AT gmail DOT com> 0.3.0 r5135 100% Complete
Russian ru Constantin Baranov <const86 at avtograd dot ru> Eugen Uvin < AT gmail DOT com> 0.3.0 r5135 100% Complete for Supertux, editor isn't translated
Slovenian sl Marko Burjek <email4marko AT gmail DOT com> 0.3.0 r4415 90%
Swedish sv Arvid Norlander <anmaster (AT) berlios DOT de> 0.3.0 r4415 not 100% complete
Ukrainian uk Eugen Uvin < AT gmail DOT com> 0.3.0 r5135 100% Complete for Supertux, editor isn't translated