Jim Fulton wrote:
IMO, if a template an element with both i18n:translate and tal:content
and the value inserted is not a message id, the template's domain will
be used. This seems like a bad idea. It can hide failures to provide
message ids because everything ultimately gets a domain. I'm working on
tools to help people see when text hasn't been internationalized and the
implicit use of of the template's domain makes these tools less useful.
Basically, the domain given in the template source applies to the source
only and shouldn't be used for data coming from elsewhere.
I propose that we should never use the templates domain when inserting data
via tal:content. Note however, if the tal expression results in the use
template's example text, the templates domain should be used.
Maybe we should translate *only* a message id values in case of i18n:translate
and tal:content/tal:replace and print a warning for any other values? Moreover
it's Zope-3.1 behavior. For Zope-3.2 there was a bug report at
http://www.zope.org/Collectors/Zope3-dev/455 partially fixed by me. Now I'm not
sure the fix was a good idea. Main disadvantage I see is that it leads to bad
i18n style for users.
Dmitry Vasiliev (dima at hlabs.spb.ru)
Zope3-dev mailing list