Ce qui me semble bizarre c'est que tu aies mis ton fichier de traduction dans /usr/share/local alors que ton application est dans /home, j'espère tout de même que l'on peut changer ça pour avoir le fichier i18n dans le même répertoire que l'application.
/usr/share/local
e est le répertoire par défaut sur ma ubuntu pour la plupart des fichiers langues.
En Python pour connaitre l' enplacement du "share" par défaut (sous Linux, Windows, etc ...) il faut faire:
>>> import sys
>>> sys.prefix # ce qui donne "/usr" sur ma ubuntu (mais c'est différent bien sûr sur windows)
---
Tu peux aussi avoir ton .mo dans un sous-dossier par rapport à ton appli.
Dans le dossier où est ton appli myapp.py, tu créer un dossier locale/fr/LC_MESSAGES (et tu mets ton .mo dedans)
Dans ton myapp.py tu dis:
- Code: Tout sélectionner
import gettext
localedir="locale"
gettext.install("myapp", localedir)
print _("hello friends")
print _("Bye Bye")
# et il devrait traduire en français
Pour les pauvres drogués de la cafféine je viens de voir qu'il existe aussi une version gettext pour java (en plus du gettext GNU original) :
http://xnap-commons.sourceforge.net/gettext-commons/