On 27 Nov 2007, at 17:14 , Nathan Yergler wrote:
On 11/27/07, Philipp von Weitershausen <[EMAIL PROTECTED]> wrote:
Nathan Yergler wrote:
I've run into a problem this morning with i18n in Zope3, and I'm not
exactly sure what the appropriate approach is. We have a set of South
African translations, paticularly Zulu (zu) and Sotho (st) that are
getting picked up correctly. Upon some inspection it appears that the
i18n negotiator is skipping over them, with an exception such as:

The desired locale is not available.
Path: /Users/nathan/p/cc.engine/branches/production/eggs/ zope.i18n-3.4.0-py2.4.egg/zope/i18n/locales/data/st.xml

Upon inspection I can confirm that the locales which are not working
are those without .xml files in the data directory.  So a few

* Is there an external source for those .xml files, or do we create
them ourselves?

The XML files are from the ICU repository
(http://www.unicode.org/cldr/). AFAIK we're using quite an old version
of the files. The problem is we can't simply upgrade to the newest
release because the XML DTD changed and the code in zope.i18n.locales
isn't very robust regarding DTD changes (which is quite hard anyway). I don't think anybody would object if the files and the code were updated
*wink* ;).

Where "wink" is defined as "so why don't you go ahead and do it", I expect :).

Exactly :).

* Translation seems to work OK (in the case of Zulu, not Sotho) from
ZPT, but not from Python; does this sound sane, or perhaps I'm missing

How are you translating from Python?

  zope.i18n.translate(msg, context=request)

Ah; I wasn't passing in the context.  Thanks.

Right. zope.i18n.translate() needs a context that it can adapt to IUserPreferredLanguages so that it can deduct the target language (it can't guess it from thin air). This context is the request (sic!).

Zope-Dev maillist  -  Zope-Dev@zope.org
**  No cross posts or HTML encoding!  **
(Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
http://mail.zope.org/mailman/listinfo/zope )

Reply via email to