En informatique , un paramètre régional est un ensemble de paramètres qui définit la langue de l'utilisateur, sa région et toute préférence de variante spéciale que l'utilisateur souhaite voir dans son interface utilisateur . En général, un identifiant de paramètre régional se compose au moins d'un code de langue et d'un code de pays/région. Le paramètre régional est un aspect important de l'i18n .
Paramètres régionaux généraux
Ces paramètres incluent généralement les paramètres de format d’affichage (sortie) suivants :
- Paramétrage du format numérique (LC_NUMERIC, C/C++)
- Classification des caractères, paramètres de conversion de casse (LC_CTYPE, C/C++)
- Paramétrage du format date-heure (LC_TIME, C/C++)
- Paramètre de classement des chaînes (LC_COLLATE, C/C++)
- Paramétrage du format monétaire (LC_MONETARY, C/C++)
- Paramètre de taille de papier (LC_PAPER, ISO 30112)
- Réglage des couleurs
- Paramètre de police de l'interface utilisateur (en particulier pour la langue CJKV )
- Paramètre de localisation (pays ou région)
- Paramètre du jeu de caractères ANSI (pour Microsoft Windows )
Les paramètres régionaux concernent le formatage de la sortie en fonction des paramètres régionaux. Ainsi, les informations sur le fuseau horaire et l'heure d'été ne font généralement pas partie des paramètres régionaux. Le paramètre de format d'entrée est moins courant, car il est généralement défini pour chaque application.
Prise en charge des langages de programmation et de balisage
Dans ces environnements,
et d'autres environnements basés sur Unicode (de nos jours) , ils sont définis dans un format similaire au BCP 47. Ils sont généralement définis avec seulement les codes ISO 639 (langue) et ISO 3166-1 alpha-2 (pays à 2 lettres).
Normes internationales
En C et C++ standard, les paramètres régionaux sont définis dans les « catégories » LC_COLLATE (classement de texte), LC_CTYPE (classe de caractères), LC_MONETARY (format monétaire), LC_NUMERIC (format numérique) et LC_TIME (format horaire). La catégorie spéciale LC_ALL peut être utilisée pour définir tous les paramètres régionaux.
Il n'existe pas de noms de paramètres régionaux standard associés aux normes C et C++, à l'exception d'un nom de « paramètres régionaux minimal » « C », bien que le format POSIX soit une base de référence couramment utilisée.
Plateformes POSIX
Sur les plateformes POSIX telles qu'Unix , Linux et autres, les identifiants de paramètres régionaux sont définis de manière similaire à la définition BCP 47 des balises de langue, mais le modificateur de variante de paramètres régionaux est défini différemment et le jeu de caractères est éventuellement inclus dans l'identifiant. Le format POSIX ou « XPG » est [language[_territory][.codeset][@modifier]] . (Par exemple, l'anglais australien utilisant le codage UTF-8 est en_AU.UTF-8 .) Par ailleurs, la norme ISO/IEC 15897 décrit une forme différente, language_territory+audience+application,sponsor_version , bien qu'il soit très douteux qu'elle soit utilisée.
Dans l'exemple suivant, il y a une sortie de commande localepour la langue tchèque (cs), la République tchèque (CZ) avec un codage UTF-8 explicite :
$ paramètres régionaux LANG=cs_CZ.UTF-8 LC_CTYPE = "cs_CZ.UTF-8" LC_NUMERIC="cs_CZ.UTF-8" LC_TIME = "cs_CZ.UTF-8" LC_COLLATE = "cs_CZ.UTF-8" LC_MONETARY = "cs_CZ.UTF-8" LC_MESSAGES = "cs_CZ.UTF-8" LC_PAPER = "cs_CZ.UTF-8" LC_NAME = "cs_CZ.UTF-8" LC_ADDRESS="cs_CZ.UTF-8" LC_TELEPHONE="cs_CZ.UTF-8" LC_MESURE = "cs_CZ.UTF-8" LC_IDENTIFICATION="cs_CZ.UTF-8" LC_ALL=
Spécificités pour les plateformes Microsoft
Windows utilise des chaînes de langue et de territoire spécifiques. L' identifiant régional (LCID) pour le code non géré sur Microsoft Windows est un nombre tel que 1033 pour l'anglais (États-Unis), 2057 pour l'anglais (Royaume-Uni) ou 1041 pour le japonais (Japon). Ces nombres se composent d'un code de langue (10 bits inférieurs) et d'un code de culture (bits supérieurs), et sont donc souvent écrits en notation hexadécimale , comme 0x0409, 0x0809 ou 0x0411. Microsoft commence à introduire des interfaces de programmation d'applications (API) à code géré pour .NET qui utilisent ce format. L'une des premières à être publiée est une fonction permettant d'atténuer les problèmes liés aux noms de domaine internationalisés , mais d'autres sont disponibles dans Windows Vista Beta 1.
À partir de Windows Vista, de nouvelles fonctions qui utilisent les noms de paramètres régionaux BCP 47 ont été introduites pour remplacer presque toutes les API basées sur LCID.
Un format de nom de paramètres régionaux de type POSIX de langue[_pays-région[.code-page]] est disponible dans l'UCRT (Universal C Run Time) de Windows 10 et 11.