The translation of the user interface is provided module-wise.
Translations are stored in the locale/
directory of a module, each language
in a PO-file. The
official language files are named after the
POSIX locale
standard, e.g. de_DE.po, es.po, es_AR.po, es_EC.po...
The names of custom language files must match the code of the language in the Model ir.lang.
If a language is set translatable
, the translations will be loaded into
the database on each trytond module update.
Tryton supports derivative translations. This means that if the translation of a term is missing in one language, it will search on the parent languages. Also when activate a children language, you must also activate all parents.
The wizard adds new translations to the base language en
.
The wizard deletes obsolete translations from the database.
The wizard updates the translations of the selected language based on the
translations of the base language en
. It will also remove duplicate
translations with its direct parent.
The wizard requires to select a language and a module and will export the translations for this selection into a PO-file.
Translations of a module can be overridden by another module. This can be done
by putting a PO file into the locale/override
directory of the module that
shall contain the translations to override.
To override the translation of another module the msgctxt
string must have
the following content:
type:name:module.xml_id
type
: Value of the field type of ir.translation.name
: Value of the field name of ir.translation.module
: Value of the field module ir.translation.xml_id
: The XML id that is stored in ir.model.data as fs_id
The xml_id part is optional and can be omitted if it is None.