A collection of tools for internationalizing Python applications.
chameleon is templating language written and maintained by Malthe Borch.
The GNU gettext library, used by the translationstring locale translation machinery.
Message Identifier
An unchanging string that is the identifier for a particular translation string. For example, you may have a translation string which has the default "the fox jumps over the lazy dog", but you might give this translation string a message identifier of foxdog to reduce the chances of minor spelling or wording changes breaking your translations. The message identifier of a translation string is represented as its msgid argument.
Translation Directory
A translation directory is a gettext translation directory. It contains language folders, which themselves contain LC_MESSAGES folders, which contain .mo files. Each .mo file represents a set of translations for a language in a translation domain. The name of the .mo file (minus the .mo extension) is the translation domain name.
Translation Domain
A string representing the "context" in which a particular translation was made. For example the word "java" might be translated differently if the translation domain is "programming-languages" than would be if the translation domain was "coffee". Every translation string has an associated translation domain.
Translation String
An instance of translationstring.TranslationString, which is a class that behaves like a Unicode string, but has several extra attributes such as domain, msgid, and mapping for use during translation. Translation strings are usually created by hand within software, but are sometimes created on the behalf of the system for automatic template translation. For more information, see API Documentation.
Translation String Factory
A factory for generating translation string objects which predefines a translation domain.
A callable which receives a translation string and returns a translated Unicode object for the purposes of internationalization.