Provided by: manpages-fr-dev_3.57d1p1-1_all 

NOM
setlocale - Définir la localisation courante
SYNOPSIS
#include <locale.h>
char *setlocale(int categorie, const char *locale);
DESCRIPTION
La fonction setlocale() est utilisée pour indiquer ou demander la localisation courante du programme.
Si locale n'est pas NULL, la localisation courante du programme est modifiée en fonction des arguments.
L'argument categorie détermine quelle partie de la localisation sera concernée par la modification.
LC_ALL toute la localisation,
LC_COLLATE
la mise en correspondance des expressions rationnelles (classes d'équivalence et intervalles), et
le classement des chaînes de caractères,
LC_CTYPE
la classification de caractère et les routines de conversions.la mise en correspondance des
expressions rationnelles, la classification de caractères, les conversions, les comparaisons
dépendant de la casse et les fonctions pour les caractères larges.
LC_MESSAGES
les messages en langue naturelle
LC_MONETARY
l'affichage des valeurs monétaires.
LC_NUMERIC
le symbole décimal (point, virgule, ...)
LC_TIME
la forme de la date et l'heure.
L'argument locale est un pointeur sur une chaîne de caractères contenant la configuration de la
categorie. Une telle chaîne peut être une constante bien connue, comme « C » ou « fr_FR » (voir plus bas)
ou une chaîne opaque renvoyée par un autre appel précédent à setlocale().
Si locale est "", chaque partie de la localisation doit être modifiée en fonction des variables
d'environnement. Les détails d'implémentation varient. Pour la glibc, d'abord (quelle que soit la
categorie) la variable d'environnement LC_ALL est examinée, puis la variable d'environnement avec le même
nom que la catégorie (LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC, LC_TIME) et finalement
la variable LANG. La première variable d'environnement existant est utilisée. Si sa valeur n'est pas une
spécification de localisation valide, la localisation n'est pas modifiée, et setlocale() renvoie NULL.
Les localisations "C" et "POSIX" sont portables, leur partie LC_CTYPE correspond au jeu de caractères
ASCII 7 bits.
Un nom de localisation est typiquement de la forme langue[_territoire][.codeset][@modificateur], où la
langue est un code linguistique ISO 639, le territoire un code de pays ISO 3166, et codeset un jeu de
caractères ou un identifiant d'encodage, comme ISO-8859-1 ou UTF-8. Pour voir une liste de toutes les
localisations disponibles, essayez « locale -a », cf. locale(1).
Si locale est NULL, la localisation courante est consultée, mais pas modifiée.
Au démarrage, la localisation portable "C" est sélectionnée par défaut. Un programme peut être rendu
portable en appelant :
setlocale(LC_ALL, "");
lors de son initialisation, en utilisant les valeurs renvoyées par localeconv(3) pour les valeurs
dépendant de la localisation, en utilisant les fonctions multioctet et caractères larges pour traiter les
chaînes si MB_CUR_MAX > 1, et en utilisant strcoll(3), wcscoll(3) ou strxfrm(3), wcsxfrm(3) pour comparer
les chaînes de caractères.
VALEUR RENVOYÉE
Un appel réussi à setlocale() renvoie une chaîne correspondant à la localisation. Cette chaîne peut être
allouée dans une zone statique. La chaîne est renvoyée de telle manière qu'un appel ultérieur avec cette
chaîne et la catégorie associée restituera cette partie de la localisation du processus. La valeur
renvoyée est NULL si la demande ne peut pas être honorée.
CONFORMITÉ
C89, C99, POSIX.1-2001.
NOTES
Linux (c'est-à-dire la glibc) supporte les localisations portables "C" et "POSIX". Il y avait auparavant
un support pour le Latin-1 européen "ISO-8859-1" (par exemple dans la libc-4.5.21 et libc-4.6.27), ainsi
que et le "KOI-8" russe (plus précisément "koi-8r" dans la libc-4.6.27). Il suffisait alors d'initialiser
la variable d'environnement LC_CTYPE=ISO-8859-1 pour que isprint(3) fonctionne correctement. Désormais,
les européens non anglophones doivent peiner un peu plus pour installer les véritables fichiers de
localisation.
VOIR AUSSI
locale(1), localedef(1), isalpha(3), localeconv(3), nl_langinfo(3), rpmatch(3), strcoll(3), strftime(3),
charsets(7), locale(7)
COLOPHON
Cette page fait partie de la publication 3.57 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/.
TRADUCTION
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). Nicolas François 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> ».
GNU 5 décembre 2008 SETLOCALE(3)