[Zope3-dev] Message id's text interpolation

Dmitry Vasiliev lists at hlabs.spb.ru
Sun Dec 18 06:00:51 EST 2005


Currently variables inside the message id's text substituted to None if
variable name hadn't found in the mapping, like this:

   >>> from zope.i18nmessageid import Message
   >>> from zope.i18n import translate
   >>> message = Message("some text ${variable}", mapping={"typo": "variable"})
   >>> translate(message)
   u'some text None'

but:

   >>> message = Message("some text ${variable}")
   >>> translate(message)
   u'some text ${variable}'

Would it to be better if no substitution will happens if variable name hasn't 
found in the mapping? So instead of u'some text None' we'll always get u'some 
text ${variable}'. I think it would be better for debugging purposes and also 
we'll get some optimizations in case of the empty mapping (seems like the ZPT 
engine always pass empty dictionary as default value for the mapping) for free.

-- 
Dmitry Vasiliev (dima at hlabs.spb.ru)
     http://hlabs.spb.ru






More information about the Zope3-dev mailing list