================ Translating epoz ================ epoz uses Zope's i18n machinery to translate user strings. Zope uses standard gettext message catalogs. Somebody who has already translated some other open source product that uses gettext will be familiar with this. Adding a new language --------------------- The language message catalogs lie in subdirectories of this directory. If you want to add a language that is not yet supported, create a directory with the two letter code of that language ('de' for German, 'fr' for French etc.). Use the standard notation when you're translating for a local derivative of that language, i.e. 'pt_BR' for Brazilian Portuguese, 'de_CH' for Swiss German etc. In that language directory, gettext expects a directory called 'LC_MESSAGES'. In the LC_MESSAGES directory, it expects the message catalog called 'epoz.mo' (since we're in the 'epoz' domain). Message catalogs are compiled. They are being edited in their text equivalent, in this case epoz.po. When you are adding a new language to epoz, copy the 'epoz.pot' template to /LC_MESSAGES/epoz.po and edit it. Use:: msgfmt -o epoz.mo epoz.po to compile the text to a message catalog. Updating an existing language ----------------------------- When epoz core has been changed or extended and new user messages have been introduced, the epoz.pot template file will contain new message ids which will have to be translated. In order to add these new message ids to your translation file, so that you can translate them, issue the following command:: msgmerge -U /LC_MESSAGES/epoz.po epoz.pot