Question

D'après une source relativement fiable, gettext n'a pas besoin des paramètres régionaux du système pour fonctionner. Mais j’ai essayé quelques tutoriels, et à moins d’avoir loco-gen'd (dans arch) fi_FI.utf8, je n’obtiens aucune traduction à afficher.

root@junior:~/programming/Projects/Cpp/web/test# LANG=fi_FI.utf8 bin/hello 
Hello world!
This is package: web-cms
root@junior:~/programming/Projects/Cpp/web/test# sed -i 's/#fi_FI.UTF-8/fi_FI.UTF-8/' /etc/locale.gen && locale-gen
Generating locales...
  en_GB.UTF-8... done
  en_US.UTF-8... done
  fi_FI.UTF-8... done
Generation complete.
root@junior:~/programming/Projects/Cpp/web/test# LANG=fi_FI.utf8 bin/hello 
Terve maailma
Tämä on paketti: web-cms
Était-ce utile?

La solution

Avez-vous bien entendu? Autant que je sache, vous avez besoin des paramètres régionaux du système pour que gettext fonctionne. Toutefois, vous n'avez pas besoin d'installer toutes les traductions de ces paramètres système pour créer votre " hello world " travail.

Autres conseils

setenv("LANGUAGE", languagecode);

Si le code de langue est "fr", et que vous avez un "fr / LC_MESSAGES / .mo" fichier dans le répertoire indiqué par bindtextdomain, cela devrait fonctionner.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top