problèmes de caractères avec gettext

problèmes de caractères avec gettext - Python - Programmation

Marsh Posté le 07-12-2005 à 19:07:53    

bonjour,
 
dans mon fichier .po, j'ai des accents pour le francais, logique. mais à l'exécution, le programme plante, en disant "UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)"
du coup j'ai voulu utiliser de l'unicode, et mettre "à la main" les accents dans les fichiers .po, avec des \u00e9 etc. mais dans ce cas, c'est la génération des fichiers .mo qui merde => le "\" est considéré comme un caractère invalide.
Que dois-je faire pour que ça marche bien ?
 
une question subsidiaire :
mes fichiers .mo sont rangés dans un dossier "locale", situé à la racine de l'application. du coup le "gettext.install("monAppli", "./locale", unicode=True)" ne marche que si l'application est lancée depuis son repertoire courant.
une astuce consiste à utiliser

Code :
  1. basepath = os.path.abspath(os.path.dirname(sys.argv[0]))
  2.     directory = os.path.join(basepath, "locale" )

ça marche assez bien mais si l'application est lancée par un lien symbolique, ça ne marche plus !
comment faire ?
 
merci !

Reply

Marsh Posté le 07-12-2005 à 19:07:53   

Reply

Marsh Posté le 07-12-2005 à 19:12:22    

http://www.pycs.net/users/0000323/stories/14.html
http://thraxil.org//users/anders/p [...] ification/
http://www.jorendorff.com/articles/unicode/python.html


Message édité par masklinn le 07-12-2005 à 19:13:44

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 08-12-2005 à 12:28:30    

Le problème d'encodage n'est pas vraiment au niveau de l'application, mais plutôt au niveau de gettext.

Reply

Marsh Posté le 11-12-2005 à 11:44:18    

personne n'utilise d'accent dans ses traductions ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed