Dev:Translation
Translating synfig & synfigstudio
synfig and synfigstudio are now translatable. We are using the standard gettext system and .po files. The gettext manual has lots of good advice for translators and programmers alike.
When you are building the source, the build system will create a PO Template for both synfig (po/synfig.pot) and synfigstudio (po/synfigstudio.pot). If those files are missing, run "make update-po" in the po/ directories.
To start a new translation, you can get into the po directory and run msginit, which will determine the correct language code from your environment, ask for your email address and create <languagecode>.po, which you should edit with one of the tools mentioned below.
We are currently auditing the code for translatable strings, so more strings will appear for translation over time.
Editing tools
Any text editor (notepad/textedit/gedit/vi/emacs) will do (especially those with specific modes for PO files), but there are a few GUI tools that make the process easier for translators by integrating spell checking, dictionaries and so on:
- KBabel: A KDE/Qt translation tool
- Pootling: A cross-platform tool with some nice features
- gtranslator: a somewhat older tool for GNOME
Testing
To test your translation, save your po file as po/<languagecode>.po, edit configure.ac and add your language code to the ALL_LINGUAS variable (be sure that you are editing the one that is before AC_OUTPUT rather than adding a new one. Once you have done that, do autoreconf and make install again. Then run synfigstudio or synfig to see how the translations look. If you edit the translation again, you just need to run make install again, no need to autoreconf.
If you are on a 64-bit platform, then please either update to SVN r1273 or run this command before running autoreconf:
sed -i -e 's/AM_GNU_GETTEXT_VERSION.*/AM_GNU_GETTEXT_VERSION([0.14.4])/' configure.ac
Contributing
When your translation is satisfactory or you have an update to it, open a patch in the sf.net bug/patch tracker and we will add it to SVN.