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.
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
.
[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
:
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.
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.
pybabel compile -d searx/translations
After the compilation is finished commit the .po
and .mo
files and create a PR.