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
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