[Zope] utf-8 problem in Zope when using Localizer

Doyon, Jean-Francois jdoyon at NRCan.gc.ca
Fri Aug 24 09:36:13 EDT 2007

If you can, I would strongly recommend using the Zope3/Five way of doing
translations and i18n in general!

See here:



I've made my site fully internationalized, localized and utf-8 using
this method without resorting to any "trickery".

setdefaultencoding() is apparently frowned upon ... Not sure why though.

Good luck!

-----Original Message-----
From: zope-bounces at zope.org [mailto:zope-bounces at zope.org] On Behalf Of
Patrick Ulmer
Sent: August 24, 2007 04:27
To: zope at zope.org
Subject: Re: [Zope] utf-8 problem in Zope when using Localizer


I think I solved the problem.

<dtml-var "MessageCatalog('Hallo Welt!').encode('utf-8')">

works. I read some further and found out that I should use something

import sys

I set it global in sitecustomize.py under
/usr/lib/python2.4/site-packages and then 

<dtml-var "MessageCatalog('Hallo Welt!')">

works. Now I only must find the right place for setdefaultencoding() so
it only affect my zope-instance.


Patrick Ulmer schrieb:
> I think it's the right way for a solution. Now my page is utf-8, but 
> if the string returned from MessageCatalog have utf-8 chars and not 
> online chars in ascii range I get this error-message:
> Error Type: UnicodeEncodeError
> Error Value: 'ascii' codec can't encode character u'\xf4' in position
> 3: ordinal not in range(128)
Zope maillist  -  Zope at zope.org
**   No cross posts or HTML encoding!  **
(Related lists -
 http://mail.zope.org/mailman/listinfo/zope-dev )

More information about the Zope mailing list