locale
Description de la gestion multilingue
- Provided by: manpages-fr (Version: 3.65d1p1-1)
- Report a bug
Description de la gestion multilingue
#include <locale.h>
Les paramètres régionaux (ou locale, en anglais) constituent un ensemble de règles linguistiques et culturelles. Ceci couvre des aspects tels que la langue utilisée pour les messages, le jeu de caractères, les conventions lexicographiques, etc. Un programme doit être capable de déterminer les paramètres de l'utilisateur et d'agir en conséquence pour être portable dans divers environnements culturels.
Le fichier d'en-tête <locale.h> déclare les types de données, les fonctions et les macros utilisés pour ces tâches.
Les fonctions déclarées sont setlocale(3) pour définir les paramètres actuels et localeconv(3) pour obtenir des informations sur la mise en forme des nombres.
Il existe différentes catégories de paramètres régionaux qui peuvent être utiles à un programme. Elles sont déclarées en tant que macros. En les utilisant comme premier argument de la fonction setlocale(3), il devient possible de définir l'une de ces catégories à la locale désirée :
Si le second argument de la fonction setlocale(3) est une chaîne de caractères vide, "", les paramètres régionaux par défaut sont déterminés selon les étapes suivantes :
Les valeurs concernant la mise en forme numérique sont
disponibles dans une structure lconv renvoyée par la fonction
localeconv(3), déclarée de la manière
suivante :
struct lconv {
/* Informations numériques (non monétaires) */
char *decimal_point; /* Séparateur décimal */
char *thousands_sep; /* Séparateur des milliers */
char *grouping; /* Chaque élément représente le nombre de
chiffres dans un groupe ; les éléments avec
les indices les plus hauts sont placés à gauche.
Un élément ayant la valeur CHAR_MAX signifie
qu'aucun regroupage ne peut plus être fait.
Un élément avec la valeur 0 signifie que
l'élément précédent est utilisé pour tous les
groupes restant à gauche. */
/* Les champs restants sont pour les informations monétaires */
char *int_curr_symbol; /* Les trois premiers caractères
correspondent au symbol monétaire
ISO 4217. Le quatrième est le
séparateur, le cinquième vaut « ». */
char *currency_symbol; /* Symbole monétaire local */
char *mon_decimal_point; /* Séparateur décimal */
char *mon_thousands_sep; /* Identique à thousands_sep ci-dessus */
char *mon_grouping; /* Identique à grouping ci-dessus */
char *positive_sign; /* Signe des valeurs positives */
char *negative_sign; /* Signe des valeurs négatives */
char int_frac_digits; /* Chiffres fractionnaires internat. */
char frac_digits; /* Chiffres fractionnaires locaux */
char p_cs_precedes; /* 1 si currency_symbol précède une
valeur positive, 0 s'il la suit */
char p_sep_by_space; /* 1 si une espace sépare currency_symbol
d'une valeur positive */
char n_cs_precedes; /* 1 si currency_symbol précède une
valeur négative, 0 s'il la suit */
char n_sep_by_space; /* 1 si une espace sépare currency_symbol
d'une valeur négative */
/* Positions des signes positifs et négatifs :
0 Parenthèses entourant la quantité et currency_symbol.
1 Le signe précède la quantité et currency_symbol.
2 Le signe suit la quantité et currency_symbol.
3 Le signe précède immédiatement currency_symbol.
4 Le signe suit immédiatement currency_symbol. */
char p_sign_posn;
char n_sign_posn;
};
POSIX.1-2008 a normalisé de nombreuses extensions à l’interface de programmation de paramètres régionaux, à partir des implémentations qui sont d’abord apparues dans la version 2.3 de la bibliothèque C de GNU. Ces extensions sont conçues pour apporter une solution au problème des interfaces de programmation traditionnelles de paramètres régionaux qui s’intègrent mal aux applications en contexte multithread et aux applications devant gérer plusieurs paramètres régionaux différents.
Les extensions prennent la forme de nouvelles fonctions pour créer et manipuler les objets de paramètres régionaux (newlocale(3), freelocale(3), duplocale(3) et uselocale(3)) et plusieurs nouvelles bibliothèques avec le suffixe « _l » (par exemple toupper_l(3)) qui complètent les interfaces de programmation traditionnelles dépendant des paramètres régionaux (par exemple toupper(3)) pour permettre d’indiquer un objet de paramètres régionaux qui devrait être pris en compte lors de l’exécution de la fonction.
POSIX.1-2001.
locale(1), localedef(1), catopen(3), gettext(3), localeconv(3), mbstowcs(3), newlocale(3), ngettext(3), nl_langinfo(3), rpmatch(3), setlocale(3), strcoll(3), strfmon(3), strftime(3), strxfrm(3), uselocale(3), wcstombs(3), locale(5)
Cette page fait partie de la publication 3.65 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.
Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C <section> <page_de_man> ».