setuptools plugin for gettext
Compile .po files into .mo files.
This plugin adds build_mo, clean_mo and install_mo subcommands for
setup.py as well as hooking those into standard commands.
Usage
By default, setuptools_gettext compiles and installs mo files when there is a
po directory present that contains .po files. It also supports the
standard gettext layout with locale/*/LC_MESSAGES/*.po files. If po is
absent and a top-level locale directory contains standard gettext catalogs,
that directory is used automatically.
The .mo files are installed adjacent to your package as package data in a subdirectory called locale.
You can override these settings in pyproject.toml:
[build-system]
requires = ["setuptools", "setuptools-gettext"]
...
[tool.setuptools-gettext]
# directory in which the .po files can be found
source_dir = "po"
# directory in which the generated .mo files are placed when building
build_dir = "breezy/locale"
# compiler to use: "auto", "msgfmt", or "translate-toolkit"
compiler = "auto"
For standard gettext layouts, point both directories at the locale tree:
[tool.setuptools-gettext]
source_dir = "breezy/locale"
build_dir = "breezy/locale"
Flat po/de.po files compile to
<build_dir>/de/LC_MESSAGES/<project-name>.mo by default. Standard
locale/de/LC_MESSAGES/django.po files compile to
<build_dir>/de/LC_MESSAGES/django.mo by default. Passing
--output-base overrides the output name for both layouts.
Compilation tool
By default, either msgfmt or the translate-toolkit package is used to
compile the .po files into .mo files - whichever is available.
Set compiler = "msgfmt" or compiler = "translate-toolkit" in
[tool.setuptools-gettext] to force a compiler from pyproject.toml.
Use compiler = "auto" to keep the default automatic detection.
The --msgfmt option can be used to force the use of msgfmt, and the
--translate-toolkit option can be used to force the use of the
translate-toolkit. Command line options take precedence over the
pyproject.toml setting.
At the moment, msgfmt is preferred. In the future, the translate-toolkit
will become the default.
You can use the translate-toolkit extra to install the translate-toolkit
package.
Release files for setuptools-gettext 0.1.18
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| setuptools_gettext-0.1.18.tar.gz | 20.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| setuptools_gettext-0.1.18-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.5 kB
Release files / setuptools_gettext-0.1.18.tar.gz
| Download URL | setuptools_gettext-0.1.18.tar.gz |
|---|---|
| Size | 20.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c92b0ae486def502686cd944f16559819e42f8dc0b9d683cf62e7415397f2b35
|
|
BLAKE2b-256 checksum How to use checksums |
78d33a17366c7ccc207758d88d9cc41b9a3746ac6adf2e59fde4f6848e8a8f20
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / setuptools_gettext-0.1.18-py3-none-any.whl
| Download URL | setuptools_gettext-0.1.18-py3-none-any.whl |
|---|---|
| Size | 16.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3363f81a30c0f6b3db5e385e5265cce8192acdc84ce29fc972b11a2c247fe51d
|
|
BLAKE2b-256 checksum How to use checksums |
e3aed508c63dd828c704aae8a4cfd5ab49986e14763cced17edaa3db2cb57ec3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|