HOWTO-Translate ScummVM GUI
Creating or Updating a translation file
Translations can be produced with the use of the GNU gettext tools.
To create or edit a translation file you can for example use Emacs PO-Mode or Poedit which are both free and available for various platforms. For a new translation, use po/scummvm.pot (from the source code repository) as a template and fill out the header. Then you just have to translate the strings and save your work in a po file.
Please note that:
- The current implementation in ScummVM supports only single byte encoding. So don't use UTF-8 encoding for the po file. Latin1 (ISO 8859-1) is fine for most western european languages.
- Some strings (e.g. button labels) contain the definition of a shortcut key using the ~ characters. For example "~S~tart" will display "Start" and use 'S' has a shortcut.
Using the translation in ScummVM
ScummVM does not use the po files directly. They need to be compiled in the application instead. To use or test your translation you will therefore need to compile ScummVM. This involves the following steps:
- Make your translation available
- move or copy your po file into the scummvm source code po/ directory.
- run "make update-translations" (you need to have perl to do this).
- Compile ScummVM (with translation support, which is the default).
Proposing your translation to the team
You are welcome to propose your new translations (or an update of an existing translation) on our patch tracker.
Limitations
- Currently there is no support for locale-defined fonts. Therefore some languages will not be displayed correctly (e.g. Russian Cyrillic will be displayed with latin accentuated characters). Translations using the latin1 encoding should all work fine however.
- As noted above, only single byte character encoding is supported.