Comment obtenir le nom de la langue pour un endroit donné dans linux
C'est à peu près Cette question avec un peu plus d'informations. Mon but est de travailler les langues installées dans le système.
La commande suivante
locale -a
affiche toutes les langues (dans un format tel que en_AU.utf8). Cela semble correspondre au contenu de /usr/lib/locale.
En outre, invoquant
LANG=fr_FR.utf8 locale -ck LC_IDENTIFICATION
Donne des informations de ce lieu particulier qui comprend le nom de la langue (Qui dans ce cas est le français).
Ce qui semble être des informations contenues dans /usr/lib/locale/fr_FR.utf8/LC_IDENTIFICATION.
Est-il un moyen (peut-être un appel API) pour obtenir cette info? J'ai regardé la source de la locale de l'utilitaire, mais il utilise une struct.
Vous n'avez pas besoin de récupérer manuellement la variable d'environnement
Vous devriez upvote et accepter Yasir de la solution, pas le copier à la question. La question doit rester une seule question.
Merci. Ajusté de la question et a ajouté réponse.
LANG
- setlocale(LC_ALL, "");
permettra de définir les paramètres régionaux basée sur les paramètres d'environnement.Vous devriez upvote et accepter Yasir de la solution, pas le copier à la question. La question doit rester une seule question.
Merci. Ajusté de la question et a ajouté réponse.
OriginalL'auteur Dushara | 2011-02-04
Vous devez vous connecter pour publier un commentaire.
Je pense, vous pourriez juste obtenir les variables d'environnement, en utilisant, par exemple,
getenv(3)
, ainsi, vous voulez passer le nom de la variable, e. g.:Je pense que vous pourriez juste besoin de tester si les paramètres régionaux ont la valeur
fr_FR
en son nom; après tout, vous savez que c'est un raccourci pour le français. L'autre fonction, ce qui pourrait être utile, c'estnl_langinfo(3)
.Hmm nl_langinfo semble prometteur. Je vais jeter un oeil à ce.
OriginalL'auteur Yasir Arsanukaev
Grâce à Yasir. C'est exactement ce que je voulais:
OriginalL'auteur Dushara