Skip to content

i18ndude performs various tasks related to ZPT's, Python Scripts and i18n.

Notifications You must be signed in to change notification settings

collective/i18ndude

Repository files navigation

i18ndude

i18ndude performs various tasks related to ZPT's, Python Scripts and i18n.

GitHub Actions badge

i18ndude works with Python 3.8-3.11, and PyPy3. Older versions are not supported anymore, use the i18ndude 5.x series if you need that.

You can install i18ndude with Buildout or pip. With pip you may want to look at our requirements.txt.

When running some i18ndude commands, you might get a UnicodeEncodeError. This can especially happen when i18ndude prints the result and you redirect the output or pipe it. This is tricky, maybe impossible, to solve in i18ndude itself. See this related question on stackoverflow. This question points to a solution that you yourself can do when you encounter this. In the (Unix-like) shell, do this:

export PYTHONIOENCODING=utf-8

This fixes UnicodeEncodeErrors when piping or redirecting output that contains non-ascii. I (Maurits) have this line in my bash profile now.

Note: if you get a UnicodeDecodeError, so 'decode' instead of 'encode', then it may be something that needs fixing in i18ndude. Please report it then.

Since version 6 we have a pre-commit hook available:

-   repo: https://github.com/collective/i18ndude
    rev: "master"
    hooks:
    -   id: i18ndude

For now it only finds the strings not marked for translation.