summaryrefslogtreecommitdiff
path: root/doc/developers/translation.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/developers/translation.rst')
-rw-r--r--doc/developers/translation.rst41
1 files changed, 24 insertions, 17 deletions
diff --git a/doc/developers/translation.rst b/doc/developers/translation.rst
index 776b5d7..f014be2 100644
--- a/doc/developers/translation.rst
+++ b/doc/developers/translation.rst
@@ -1,40 +1,47 @@
+===========================
Translating SemanticScuttle
===========================
SemanticScuttle uses gnu gettext for translation. It does not
rely on the php extension but ships with a pure php implementation,
-php-gettext[1].
+php-gettext_.
Using gettext from within the code is really easy:
-Enclose the string you want to translate in a "T_" function call.
+Enclose the string you want to translate in a "``T_``" function call.
+
+For example, to translate::
+
+ echo "Vote for";
-For example, to translate
-> echo "Vote for";
just write
-> echo T_("Vote for");
+ echo T_("Vote for");
+
+.. _php-gettext: https://launchpad.net/php-gettext/
Translation basics
-------------------
+==================
We keep one base translation file, data/locales/messages.po.
This file is auto-generated via xgettext from all our php source files.
In case you added a new string to the code that needs translation,
-update the base translation file by running
-> php scripts/update-translation-base.php
+update the base translation file by running ::
+
+ $ php scripts/update-translation-base.php
-After that has been done, the changes to the base messages.po file
+After that has been done, the changes to the base ``messages.po`` file
need to be merged into the single language translation files,
-for example data/locales/de_DE/LC_MESSAGES/messages.po.
+for example ``data/locales/de_DE/LC_MESSAGES/messages.po``.
-Updating them from the master file is as easy as running
-> php scripts/update-translation.php de_DE
+Updating them from the master file is as easy as running::
-When the translation is ready, the .po file needs to be compiled
-in a machine-readable .mo file. Use
-> php scripts/compile-translation.php de_DE
-to achieve that.
+ $ php scripts/update-translation.php de_DE
+
+When the translation is ready, the ``.po`` file needs to be compiled
+in a machine-readable ``.mo`` file. Use ::
+ $ php scripts/compile-translation.php de_DE
+
+to achieve that.
-[1] https://launchpad.net/php-gettext/ \ No newline at end of file