Loading

NOM

       catopen, catclose - Ouverture et fermeture d’un catalogue de messages

SYNOPSIS

       #include <nl_types.h>

       nl_catd catopen(const char *name, int flag);

       int catclose(nl_catd catalog);

       La fonction catopen() ouvre un catalogue de messages, et en retourne un
       descripteur. Celui-ci reste  valide  jusqu’à  un  appel  catclose()  ou
       execve(2). Si un descripteur de fichier est utilisé pour implémenter le
       descripteur de catalogue, le drapeau FD_CLOEXEC sera défini.

       L’argument name indique le nom du catalogue à ouvrir. Si  name  indique
       un  chemin  d’accès  absolu (contenant un « / » )  alors il est employé
       comme chemin d’accès au catalogue. Sinon, la  variable  d’environnement
       NLSPATH  est  utilisée,  après  avoir  substitué name à son argument %N
       (voyez locale(7)). Lorsque le processus à des privilèges root, l’emploi
       éventuel  de  NLSPATH  n’est  pas garanti. Si NLSPATH n’est pas définie
       dans l’environnement, ou si le  catalogue  de  messages  ne  peut  être
       ouvert  dans  aucun  des  chemins  qu’elle  contient,  alors  un chemin
       prédéfini, dépendant de l’implémentation, est utilisé. Ce dernier  peut
       dépendre de la catégorie de localisation LC_MESSAGES si l’argument flag
       vaut NL_CAT_LOCALE ou de la variable d’environnement LANG si l’argument
       flag  vaut zéro. Changer la partie LC_MESSAGES de la localisation, peut
       rendre invalides les descripteurs de catalogues déjà ouverts.

       L’argument flag de catopen() indique l’origine du langage  à  utiliser.
       S’il vaut NL_CAT_LOCALE alors il utilisera la configuration actuelle de
       la  localisation  définie  par  LC_MESSAGES.  Sinon,  il  utilisera  la
       variable d’environnement LANG.

       La  fonction  catclose() ferme le catalogue identifié par catalog. Ceci
       invalide toute référence ultérieure au catalogue de message défini  par
       le descripteur catalog.

VALEUR RENVOYÉE

       La  fonction  catopen() renvoie un descripteur de catalogue de messages
       du  type  nl_catd  si  elle  réussit.  En  cas  d’échec,  elle  renvoie
       (nl_catd)-1  et  définit  errno  avec  le  code  d’erreur.  Les erreurs
       possibles incluent toutes celles que peut renvoyer open(2).

       La fonction catclose() renvoie 0 si elle réussit, ou -1 en cas d’échec.

ENVIRONNEMENT

       LC_MESSAGES
              Peut-être   la  source  de  la  définition  de  la  localisation
              LC_MESSAGES et peut servir à déterminer le langage  à  utiliser,
              si flag vaut NL_CAT_LOCALE.

       LANG   Le langage à utiliser, si flag vaut zéro.

CONFORMITÉ

       POSIX.1-2001.  L’origine  des  constantes  MCLoadBySet et MCLoadAll est
       incertaine (voyez ci-dessous).

NOTES

       Tout ceci correspond  à  la  description  POSIX.1-2001.  La  valeur  de
       NL_CAT_LOCALE  de la glibc est 1 (Comparez avec MCLoadAll plus bas). Le
       chemin  par  défaut  varie,  mais  il  inclut  en   général   plusieurs
       emplacements sous /usr/share/locale.

   Notes sur Linux
       Ces  fonctions sont disponibles sous Linux depuis la version 4.4.4.c de
       la libc. Dans le cas des  libc4  et  libc5  Linux,  le  descripteur  de
       catalogue  nl_catd  est  en  réalité  une zone de mémoire de projection
       mmap(2) et non pas  un  descripteur  de  fichier.  L’argument  flag  de
       catopen()  devrait être soit MCLoadBySet (= 0) soit MCLoadAll (= 1). La
       première valeur indique qu’un ensemble du catalogue  doit  être  chargé
       quand  le  besoin  s’en  fait  sentir,  alors que la seconde réclame le
       chargement en mémoire dès l’appel initial à catopen().  Le  chemin  par
       défaut  varie,  mais  il  inclut en général plusieurs emplacements sous
       /etc/locale et /usr/lib/locale.

VOIR AUSSI

       catgets(3), setlocale(3)

COLOPHON

       Cette page fait partie de  la  publication  3.23  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

       Cette  page  de  manuel  a  été  traduite et mise à jour par Christophe
       Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis  par
       Alain  Portal  <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise à
       disposition sur http://manpagesfr.free.fr/.

       Les mises à jour et corrections de la version présente dans Debian sont
       directement gérées par Florentin Duneau <fduneau@gmail.com> et l’équipe
       francophone de traduction de Debian.

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