summaryrefslogtreecommitdiff
path: root/docs/dev/translation.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/dev/translation.rst')
-rw-r--r--docs/dev/translation.rst61
1 files changed, 61 insertions, 0 deletions
diff --git a/docs/dev/translation.rst b/docs/dev/translation.rst
new file mode 100644
index 000000000..ab4dd98cb
--- /dev/null
+++ b/docs/dev/translation.rst
@@ -0,0 +1,61 @@
+Translation
+===========
+
+Requirements
+------------
+
+ * Transifex account
+
+ * Installed CLI tool of Transifex
+
+Init Transifex project
+----------------------
+
+After installing ``transifex`` using pip, run the following command to initialize the project.
+
+.. code:: shell
+
+ tx init # Transifex instance: https://www.transifex.com/asciimoo/searx/
+
+
+After ``$HOME/.transifexrc`` is created, get a Transifex API key and insert it into the configuration file.
+
+Create a configuration file for ``tx`` named ``$HOME/.tx/config``.
+
+.. code:: shell
+
+ [main]
+ host = https://www.transifex.com
+ [searx.messagespo]
+ file_filter = searx/translations/<lang>/LC_MESSAGES/messages.po
+ source_file = messages.pot
+ source_lang = en
+ type = PO
+
+
+Then run ``tx set``:
+
+.. code:: shell
+
+ tx set --auto-local -r searx.messagespo 'searx/translations/<lang>/LC_MESSAGES/messages.po' \
+ --source-lang en --type PO --source-file messages.pot --execute
+
+
+Update translations
+-------------------
+
+To retrieve the latest translations, pull it from Transifex.
+
+.. code:: shell
+
+ tx pull -a
+
+Then check the new languages. If strings translated are not enough, delete those folders, because
+those should not be compiled. Call the command below to compile the ``.po`` files.
+
+.. code:: shell
+
+ pybabel compile -d searx/translations
+
+
+After the compilation is finished commit the ``.po`` and ``.mo`` files and create a PR.