Skip to main content

gettext PO files translate by Yandex translator

Project description

PoTrans python3 library and console tool


Automatically translate gettext's *.po files to specified language, using Yandex Translate


# pip3 install potrans

Usage of library

To use it, use must acquire Yandex Translator API key here:
it looks like "trnsl.1.1.20160716T101753Z.a0378f5552843fb4.c5a82afc2a581d1e3717f92d4c753f3f798deb2a"

from potrans import Translator

key = "trnsl.1.1.20160716T101753Z.a0378f5552843fb4.c5a82afc2a581d1e3717f92d4c753f3f798deb2a"
translator = Translator(key)
translator.go_translate("en", "de")

Usage of console script

Translate from Russian to Italian and save result to po-file:

potrans translate -i ./ru_RU.po -il ru -ol it -o ./it_IT.po --key trnsl.1.1.20160716T101753Z.a0378f5552843fb4.c5a82afc2a581d1e3717f92d4c753f3f798deb2a

if you don't like to specify key every time, you can put it into ~/.config/potrans.key:

echo "trnsl.1.1.20160716T101753Z.a0378f5552843fb4.c5a82afc2a581d1e3717f92d4c753f3f798deb2a" >> ~/.config/potrans.key

now, you can run the same command without key:

potrans translate -i ./ru_RU.po -il ru -ol it -o ./it_IT.po

Translate and save result to *.po and *.mo files:

potrans translate -i ./ru_RU.po -il ru -ol it -o ./it_IT.po -om ./

Translate with outputting all the phrases and it's translate strings:

potrans translate --debug -i ./ru_RU.po -il ru -ol it -o ./it_IT.po

Translate, using msgid in case msgstr is empty:

potrans translate --usemsgid -i ./ru_RU.po -il ru -ol it -o ./it_IT.po

Just convert *.po to *.mo without translation:

potrans convert -i ./ru_RU.po -o ./

Change Log
0.1.7 - Fixed bug where empty msgid translation caused error
Added autoreplace to strings like "%d", "%s", " ", "←"

0.1.6 - Changed cli, so, yandex_api key no longer needed to convert *.po to *.mo
Added script to run package cli interface in development

0.1.5 - Added changelogs to a package info

0.1.4 - Added some info to README.rst

0.1.0 - Initial release

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for PoTrans, version 0.1.7
Filename, size File type Python version Upload date Hashes
Filename, size PoTrans-0.1.7.tar.gz (5.6 kB) File type Source Python version None Upload date Hashes View
Filename, size PoTrans-0.1.7-py3-none-any.whl (7.6 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page