Translate X-Moto and X-Moto Website into your language

From X-Moto
Jump to: navigation, search

How can I do this

Translate X-Moto game or X-Moto website is very easy. This is not technical at all. Anybody who speaks English and an other language can do this.

How does it work ?

X-Moto and X-Moto website are written fully in english. However, the GNU tools gives a mechanism to translate any sentences into an other one. To do that, you have to write a file giving all the conversions (to answer to the question "How to you say ... into your language ?"). This file is called a po file. Then, there is a fr.po for the french translation, a es.po, a ru.po, ... one for each language. A .po file is a simple text file where you can associate to each msgid (message identifier) a msgstr (message string). You can open it with any text editor, however, poedit for windows or lokalize (kbabel) for linux will help you to translate.

Example :

#: src/GameText.h:53
msgid "Automatic saving of replays"
msgstr ""

becomes for the french translation

#: src/GameText.h:53
msgid "Automatic saving of replays"
msgstr "Sauvegarde automatique des replays"

Lines starting by a # are ignored.

Where to get the .po file

When you start a translation, always take the last version available on the link below in the case somebody else updated it since the last time you downloaded it.

For the X-Moto game

if X-Moto is not translated into your language, your must start with this file

For the website

if the website is not translated into your language, your must start with this file

How to create the .mo file

From GNU/Linux

# edit your po/*.po file 
cd po
make update-po
make install

From Windows

  • Copy the the two .bat and the bin dir into
c:/Program Files/X-Moto/locales/your_lang/LC_MESSAGES

just next to the existing

  • Rename your .po into xmoto.po and it there too, so that in the same dir, you've xmoto.po,, bin and the two .bat
  • update your .po
  • clic on the .bat of your choice (showMissingTranslation to get the error lines and makeMyTranslation to build the .mo)

How to update a .po file

On GNU/Linux

make update-po

About translation itself

What's #fuzzy

  1. fuzzy means that gettext tried to translate by itself. It's generally not good at all.

Example :

#: src/GameText.h:185
#, fuzzy
msgid "Failed to update the theme list"
msgstr "Mettre à jour la liste"

must be changed to become

#: src/GameText.h:185
msgid "Failed to update the theme list"
msgstr "Echec lors de la mise à jour du thème"

What's the last lines at the end of the .po starting by #~

You can remove these lines. It's translation which doesn't exist anymore in xmoto.

Example :

#~ msgid "Flip left 2"
#~ msgstr "Pencher à gauche 2"

#~ msgid "Flip right 2"
#~ msgstr "Pencher à droite 2"

Need help ?

If you need any help or want to propose your .po, just write to us here :


Untranslated messages

To see untranslated messages, just run

msgattrib --untranslated fr_FR.po
msgattrib --fuzzy fr_FR.po