Difference between revisions of "Dev:Translation"

From Synfig Studio :: Documentation
Jump to: navigation, search
(need another workaround now)
m (Cleaning)
 
(20 intermediate revisions by 6 users not shown)
Line 1: Line 1:
= Translating synfig & synfigstudio =
+
{{Title|Translating}}
  
synfig and synfigstudio are now translatable. We are using the standard gettext system and .po files. The [http://www.gnu.org/software/gettext/manual/gettext.html gettext manual] has lots of good advice for translators and programmers alike. <br/>
+
= Translating Synfig & Synfig Studio =
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. <br/>
+
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.
+
We are using the standard {{Literal|gettext}} system and .po files. The [http://www.gnu.org/software/gettext/manual/gettext.html gettext manual] has lots of good advice for translators and programmers alike.
  
== Editing tools ==
+
If you add a .cpp or .h file containing new translatable strings (standard gettext), you must add those files in the associated potfiles.in that you can find in the {{Literal|synfig-core}} or {{Literal|synfig-studio}} po directory.
  
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:
+
Since the migration to {{Literal|intltool}} the build system does not automatically generate the PO Templates.
 +
In order to generate and update the translations, from both {{Literal|synfig-core}} and {{Literal|synfig-studio}} directories use the command {{Literal|cd po && make update-po}}.
  
* [http://kbabel.kde.org/ KBabel]: A KDE/Qt translation tool
+
= Online translation tool =
* [http://www.khmeros.info/drupal/?q=en/download/Translation_Editor Pootling]: A cross-platform tool with some nice features
+
* [http://sourceforge.net/projects/gtranslator/ gtranslator]: a somewhat older tool for GNOME
+
  
== Testing ==
+
Synfig can be translated online using an internet browser: https://www.transifex.com/projects/p/synfig
  
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.
+
The translation .pot files are automatically pushed from a server to transifex. The .pot files are not pushed immediately, but at a certain time of the day.
  
If you are on a 64-bit platform, then you might need to use this workaround (after running configure and before running make) to get synfig to produce and install the translation files:
+
== New Translations ==
 +
To start a new translation, use the online translation tool: https://www.transifex.com/projects/p/synfig
  
echo '#define ENABLE_NLS 1' >> config.h ; make -C po all-yes ; sudo make -C po install-data-yes
+
If you don't have a transifex account, sign up as a contributor, and join the synfig project. Now, you can ask for a new language.
  
Do this after doing a normal sudo make install, for both synfig and synfigstudio.
+
== Updating Translations ==
 +
To update the translation, use the online translation tool : https://www.transifex.com/projects/p/synfig
  
== Contributing ==
+
If you don't have a transifex account, sign up as a contributor, and join synfig project. Now, you can ask to join a language team.
  
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.
+
== More informations about Translations ==
 +
If you need more informations about the synfig translation workflow, you can join the synfig team using the [http://synfig.org/forums forums], or by the [http://sourceforge.net/p/synfig/mailman/synfig-devl/ synfig-devl mailing list]

Latest revision as of 12:49, 9 February 2020

Translating Synfig & Synfig Studio

We are using the standard "gettext" system and .po files. The gettext manual has lots of good advice for translators and programmers alike.

If you add a .cpp or .h file containing new translatable strings (standard gettext), you must add those files in the associated potfiles.in that you can find in the "synfig-core" or "synfig-studio" po directory.

Since the migration to "intltool" the build system does not automatically generate the PO Templates. In order to generate and update the translations, from both "synfig-core" and "synfig-studio" directories use the command "cd po && make update-po".

Online translation tool

Synfig can be translated online using an internet browser: https://www.transifex.com/projects/p/synfig

The translation .pot files are automatically pushed from a server to transifex. The .pot files are not pushed immediately, but at a certain time of the day.

New Translations

To start a new translation, use the online translation tool: https://www.transifex.com/projects/p/synfig

If you don't have a transifex account, sign up as a contributor, and join the synfig project. Now, you can ask for a new language.

Updating Translations

To update the translation, use the online translation tool : https://www.transifex.com/projects/p/synfig

If you don't have a transifex account, sign up as a contributor, and join synfig project. Now, you can ask to join a language team.

More informations about Translations

If you need more informations about the synfig translation workflow, you can join the synfig team using the forums, or by the synfig-devl mailing list