zope.app.locales 3.7.4

Zope locale extraction and management utilities

  Add it to your Download Basket!

 Add it to your Watch List!


Rate it!

What's new in zope.app.locales 3.7.4:

  • In version 3.7.2 msgids and default values were forced to be unicode. This was too strict because at least the TAL extractor returns UTF-8 encoded default values. Fixed this by allowing the default value to be a string again.
Read full changelog
send us
an update
ZPL (Zope Public License) 
Zope Corporation and Contributors
ROOT \ Programming \ Internationalization
zope.app.locales provides some facilities for extracting and managing i18n messages that occur in Zope software. More specifically, i18n messages can occur in Python code, in Page Templates and in ZCML declarations. zope.app.locales provides a utility that can extract messages from all three and write them to a standard gettext template (pot file).

Detailed Documentation:

Internationalization (I18n) and Localization (L10n)

This document assumes that you have a Zope 3 checkout and the gettext utilities installed.

Creating/Updating Message Catalog Template (POT) Files

Whenever you've made a change to Zope that affects the i18n messages, you need to re-extract i18n messages from the code. To do that, execute i18nextract.py from the utilities directory of your Zope 3 checkout:

  python utilities/i18nextract.py -d zope -p src/zope -o app/locales

This will update the zope.pot file. Make sure that the checkout's src directory is part of your PYTHONPATH environment variable.

After that, you need to merge those changes to all existing translations. You can do that by executing the i18nmergeall.py script from the utilities directory of your Zope 3 checkout:

  python utilities/i18nmergeall.py -l src/zope/app/locales


To translate messages you need to do the following steps:

 If a translation for your language is already present and you just want to update, skip ahead to step 2. If you want to start translation on a new language, you need to

 create a directory


 with the appropriate code for your language as . Note that the two letters specifying the language should always be lower case (e.g. 'pt'); if you additionally specify a region, those letters should be upper case (e.g. 'pt_BR').

 copy the zope.pot template file to /LC_MESSAGES/zope.po.

 edit the PO header of the newly created zope.po file and fill in all the necessary information.

 Translate messages within the PO file. Make sure the gettext syntax stays intact. Tools like poEdit and KBabel can help you.

 Finally, when you're done translating, compile the PO file to its binary equivalent using the msgfmt tool:

cd < lang_code >/LC_MESSAGES $ msgfmt -o zope.mo zope.po

Last updated on May 18th, 2012


#Zope locale #locale extractor #locale management #Zope #locale #extractor #management

Add your review!