[ZPT] PageTemplate + Localizer

Nik Kim fafhrd@datacom.kz
23 Nov 2001 13:55:09 +0600


--=-TCq96F0I3oqUSp0gLtSL
Content-Type: text/plain
Content-Transfer-Encoding: 7bit

Hi.

i write small product which add filesystem-based MessageCatalog
and new PageTemplates expression gettext

something like this: 

<b tal:define="messageCatalog nocall:here/SomeMessageCatalog;
   lang string:en"
   tal:content="gettext:fr">Text</b>


http://fafhrd.datacom.kz/CMFLocalizer-0.1.tar.gz



--=-TCq96F0I3oqUSp0gLtSL
Content-Type: application/x-gzip
Content-Disposition: attachment; filename=CMFLocalizer-0.1.tar.gz
Content-Transfer-Encoding: base64

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

--=-TCq96F0I3oqUSp0gLtSL--