How translations works in GalaxyMage
About Gettext framework
GalaxyMage uses the gettext framework. This framework is easy to use for a developper point of view
and powerfull for the translator.
If you want to know more about gettext, go to gettext site
Developper point of view
For a developper, the translations task aims to translate text string or redifine filename for a specific language.
Translate string
If you want to translate a string, simply call _ method with the string. No more things to do !
This is the dummy example :
print _("Hello world")
if "Hello world" is found in the french dictionnary, the print will ouput Salut le monde
else the string is return by _(...) so Hello world will be printed
Filename
If a filename must be specific for a language, for example for a voice sound file,
we use the same method as string!
Since a filename is a string, we use the same method, this is the code use in Name.py to load
specific name :
__maleNames = Resources.text(_("names-male"))
So if a language provides a specific names-male, the dictionnary will contais the specific name
and it will be return by _(...).
In this example, in french language the key names-male is link to noms-homme
Translator point of view
FIXME: to be define !