searxng/docs/dev/translation.rst

62 lines
1.4 KiB
ReStructuredText

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.