moved over some changes from cvs
[supertux.git] / docs / translation.txt
1 0. How to Translate
2 ~~~~~~~~~~~~~~~~~~~~
3
4 * Install gettext
5 * get a cvs snapshot of supertux and do the usual autogen.sh, configure.
6   Make sure configure can find the xgettext application.
7     (ie. "checking for xgettext... xgettext"
8      and "checking if xgettext supports Lisp... yes")
9 * Run 'jam' and let it compile supertux and create all the messages.po files
10 * Go into data/locale and data/levels/*/ and in each dir do:
11      - In case you want to create a new translation do
12         msginit -i messages.pot -o $LANG.po
13        (where $LANG is the 2character handle of your language)
14      - In case you want to update an existing translation do
15         msgmerge -U $LANG.po messages.pot
16
17 * Edit the .po files with your favourite Editor or with 1 of the GUI tools
18   below.
19 * Send the translated .po files to the supertux-devel mailing list.
20 * You should also edit the supertux.desktop file and add a comment entry for
21   your language
22
23 1. Notes for Translators
24 ~~~~~~~~~~~~~~~~~~~~~~~~~
25
26 * If there isn't a good translation for some term (ie. fullscreen), you might
27   consider to just keep it. It's better than making the user confused.
28
29 * In English, there is only one singular second person mode (You). If your
30   language does have more than one - a personal and impersonal - remember that
31   this is a game, so you should use the personal one. And if it is possible to
32   ommit it in your language, it might be a good idea.
33
34 * Names like SuperTux, Tux, Penny or Nolok should not be translated. If you
35   really think one of these to be a too strange word for your people, first
36   inform us at our mailing list. Minor characters like Mr. Ice Block can (and
37   should) be translated.
38
39 A couple of notes:
40 * If somewhere in the game, after translating a string, it doesn't look well
41   (bad aligment, overlaps other text...), let us know - we will fix it.
42
43 2. GUI Tools
44 ~~~~~~~~~~~~~
45
46  KBabel      - a long dated KDE program that has been maturing over the years,
47                and it's really handy by now.
48  poEdit      - a multi-platform po editor (runs under Windows and Unix).
49                URL: http://poedit.sourceforge.net/
50  (X)Emacs    - a commonly used program for translating with the respective
51                plugin.
52  QTranslator - made by Qt, has the advantage of running in several platforms.
53                PO files are written in ASCII and are pretty intuitive, so they
54                can be used by any text editor. But it would be wise to use a
55                program made for that effect. If not possible, use a text editor
56                with highlighting for PO files.
57
58 3. Note for developers
59 ~~~~~~~~~~~~~~~~~~~~~~~
60
61  Output should not be translated, since their purpose is mainly for debugging.
62  However, command description (ie. --help) should obviously be translated.
63  Messages that give the user a solution for a problem, might be translatable,
64  as well.
65  Parametars shouldn't be translatable. It breaks scripting.
66
67 The SuperTux Team