l10n and PO file helper tools
dennis is a command line tool for translating and linting .po files.
It includes the following subcommands:
lint: Lints .po files for problems including errors that can cause your production system to crash.
The system allows for defining other variable formats.
status: Get a high-level status of a .po file including a list of unstranslated strings.
translate: Translates strings in .po files into something else! Comes with an HTML extractor (tokenizes strings so that only the text is translated) and a bunch of translations like Pirate!. This is helpful for l10n testing, development, finding unicode/layout problems, amazing your friends, hilarious April 1st shenanigans, etc.
The system allows for other translators and extractors using a loosely coupled pipeline.
This also works on strings passed in as command line arguments and as stdin—it doesn’t have to be a .po file or in a .po format. Dennis uses dennis to translate all dennis commit messages into Pirate!. That’s how cool dennis is!
$ pip install dennis $ pip install blessings # Optional for prettier output
Lint a .po file for problems:
$ dennis-cmd lint locale/fr/LC_MESSAGES/messages.po
Lint all your .po files for errors:
$ dennis-cmd lint --errorsonly locale/
Translate a .po file in place into Pirate!:
$ dennis-cmd translate --pipeline=html,pirate \ locale/xx/LC_MESSAGES/messages.po
|License:||BSD 3-clause; see LICENSE file|
Why is it called dennis?
This is how I name my software projects.
Release history Release notifications
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size & hash SHA256 hash help||File type||Python version||Upload date|
|dennis-0.4-py2.py3-none-any.whl (24.6 kB) Copy SHA256 hash SHA256||Wheel||py2.py3||May 1, 2014|
|dennis-0.4.tar.gz (35.0 kB) Copy SHA256 hash SHA256||Source||None||May 1, 2014|