Provided by: manpages-it_4.21.0-2_all bug

NOME

       locale - Descrizione del supporto multi-lingue

SINTASSI

       #include <locale.h>

DESCRIZIONE

       Una  localizzazione  è un insieme di regole linguistiche e culturali che coprono campi come la lingua dei
       messaggi, diversi insiemi di  caratteri,  convenzioni  lessicografiche,  ecc.  Un  programma  deve  poter
       determinare la sua localizzazione e agire di conseguenza per poter essere adattato a culture diverse.

       L'header <locale.h> dichiara i tipi di dati, funzioni e macro utili a questo scopo.

       Le  funzioni  che  vengono  dichiarate  sono  setlocale(3)  per  impostare  la  localizzazione  attuale e
       localeconv(3) per ottenere informazioni sulla formattazione dei numeri.

       Le differenti categorie di informazioni sulla localizzazione di cui un programma  potrebbe  aver  bisogno
       vengono  dichiarate  come  macro.  Usandole  come  primo argomento alla funzione setlocale(3) è possibile
       impostare queste variabili alla localizzazione desiderata:

       LC_ADDRESS (estensione GNU, a partire da glibc 2.2)
              Cambia le impostazioni che definiscono i formati usati per specificare luoghi ed elementi di  tipo
              geografico  (p.es.  indirizzi  postali).  Le  applicazioni  che  necessitano  di  questo  tipo  di
              informazioni  possono  usare  nl_langinfo(3)  per   richiamare   elementi   non   standard,   come
              _NL_ADDRESS_COUNTRY_NAME    (nome    del    paese,    nella   lingua   della   localizzazione)   e
              _NL_ADDRESS_LANG_NAME (nome della lingua,  nella  lingua  della  localizzazione,  che  restituisce
              stringhe  come "Deutschland" e "Deutsch" (per le localizzazioni della lingua tedesca). (Altri nomi
              di elementi sono elencati in <langinfo.h>.)

       LC_COLLATE
              Questa categoria controlla le regole di  collazione  usate  per  l'ordinamento  e  le  espressioni
              regolari,  comprese  le  classi  di  equivalenza  dei  caratteri  e  gli  elementi  di  collazione
              multicarattere. Questa categoria  di  localizzazione  modifica  il  comportamento  delle  funzioni
              strcoll(3) e strxfrm(3), che servono per confrontare stringhe nell'alfabeto locale. Ad esempio, la
              «ß» tedesca viene ordinata come «ss».

       LC_CTYPE
              Questa  categoria  determina  l'interpretazione  delle  sequenze  di  byte  come  caratteri (p.es.
              caratteri singoli o multibyte), le classificazioni dei caratteri (p.es. lettera  o  cifra),  e  il
              comportamento  delle  classi di caratteri. Sui sistemi basati su glibc, questa categoria determina
              anche  le  regole  di  traslitterazione  dei  caratteri  per  iconv(1)  e  iconv(3).  Modifica  il
              comportamento   delle  funzioni  che  maneggiano  e  classificano  caratteri,  come  isupper(3)  e
              toupper(3), e le funzioni per caratteri multibyte come mblen(3) o wctomb(3).

       LC_IDENTIFICATION (estensione GNU, a partire da glibc 2.2)
              Cambia le impostazioni inerenti ai metadati per la localizzazione. Le applicazioni che necessitano
              di questa informazione possono usare nl_langinfo(3) per richiamare  elementi  non  standard,  come
              _NL_IDENTIFICATION_TITLE     (titolo     di     questo     documento    di    localizzazione)    e
              _NL_IDENTIFICATION_TERRITORY (territorio  geografico  al  quale  si  applica  il  documento),  che
              potrebbe restituire "English locale for the USA" e "USA". (Altri nomi di elementi sono elencati in
              <langinfo.h>.)

       LC_MONETARY
              Questa  categoria determina la formattazione usata per i valori numerici di tipo monetario. Cambia
              l'informazione restituita da  localeconv(3),  che  descrive  il  modo  in  cui  i  numeri  vengono
              normalmente  stampati,  compresi  dettagli  come  l'uso del punto o della virgola decimale. Questa
              informazione è usata internamente dalla funzione strfmon(3).

       LC_MESSAGES
              Questa categoria influisce sulla lingua nella quale i messaggi vengono mostrati e la  forma  delle
              risposte positive o negative. La libreria C di GNU contiene le funzioni gettext(3), ngettext(3), e
              rpmatch(3)  per  facilitare  l'impiego di queste informazioni. La famiglia di funzioni GNU gettext
              rispetta anche la variabile  d'ambiente  LANGUAGE  (che  contiene  un  elenco  di  localizzazioni,
              separate  da  virgole)  se  la categoria è stata impostata ad una localizzazione valida diversa da
              "C". Questa categoria influisce anche sul comportamento di catopen(3).

       LC_MEASUREMENT (estensione GNU, a partire da glibc 2.2)
              Cambia le impostazioni relative al sistema di misura nella localizzazione (cioè, metrico o sistema
              consuetudinario  statunitense).  Le  applicazioni  possono  usare  nl_langinfo(3)  per  richiamare
              l'elemento  non  standard  _NL_MEASUREMENT_MEASUREMENT che restituisce un puntatore a un carattere
              che ha il valore 1 (metrico) o 2 (sistema consuetudinario statunitense).

       LC_NAME (estensione GNU, a partire da glibc 2.2)
              Cambia  le  impostazioni  che  definiscono  i  formati  usati  per  rivolgersi  alle  persone.  Le
              applicazioni  possono usare nl_langinfo(3) per richiamare elementi non standard, come gli elementi
              _NL_NAME_NAME_MR (titolo generico per gli uomini)  e  _NL_NAME_NAME_MS  (titolo  generico  per  le
              donne),  che  restituiscono stringhe come "Herr" e "Frau" (per le localizzazioni in lingua tedesca
              ["Signor" e "Signora" per quelle in lingua italiana]). Altri nomi di  elementi  sono  elencati  in
              <langinfo.h>.)

       LC_NUMERIC
              This category determines the formatting rules used for nonmonetary numeric values—for example, the
              thousands  separator  and  the radix character (a period in most English-speaking countries, but a
              comma in many other regions). It affects functions such as  printf(3),  scanf(3),  and  strtod(3).
              This information can also be read with the localeconv(3) function.

       LC_PAPER (estensione GNU, a partire da glibc 2.2)
              Cambia le impostazioni relative alle dimensioni dei formati standard della carta (p.es., US letter
              o   A4).   Le   applicazioni  che  necessitano  di  queste  dimensioni  possono  ottenerle  usando
              nl_langinfo(3) per richiamare gli elementi non standard _NL_PAPER_WIDTH  e  _NL_PAPER_HEIGHT,  che
              restitiuscono valori interi che definiscono le dimensioni in millimetri.

       LC_TELEPHONE (estensione GNU, a partire da glibc 2.2)
              Cambia le impostazioni che descrivono i formati da usare per i servizi telefonici. Le applicazioni
              che  necessitano  di  questa  informazione possono usare nl_langinfo(3) per richiamare lementi non
              standard, come _NL_TELEPHONE_INT_PREFIX (prefisso internazionale  usato  per  chiamare  numeri  in
              questa  localizzazione),  che  restituiscono  una stringa come, per esempio, "49" (per la Germania
              ["39" per l'Italia]). Altri nomi di elementi sono elencati in <langinfo.h>.)

       LC_TIME
              Questa categoria controlla la formattazione usata per valori di data e ora. Per esempio, in  buona
              parte  d'Europa  si  usano  le  24  ore,  a  differenza  delle  12  ore  usate  negli Stati Uniti.
              L'impostazione di questa categoria influisce sul comportamento  di  funzioni  come  strftime(3)  e
              strptime(3).

       LC_ALL Vale per tutte le macro precedenti.

       If  the second argument to setlocale(3)  is an empty string, "", for the default locale, it is determined
       using the following steps:

       (1)  Se è presente una variabile d'ambiente non nulla LC_ALL, viene usato il valore di LC_ALL.

       (2)  Se una variabile d'ambiente con lo stesso nome di una delle categorie precedenti  esiste  ed  è  non
            nulla, il suo valore viene usato per quella categoria.

       (3)  Se è presente una variabile d'ambiente non nulla LANG, viene usato il valore di LANG.

       I  valori  che  descrivono  la  formattazione  locale  dei  numeri  sono  disponibili in una struct lconv
       restituita dalla funzione localeconv(3), che è così dichiarata:

           struct lconv {

           /* Informazioni numeriche (non monetarie) */

              char *decimal_point;     /* Carattere radice (separatore decimale) */
              char *thousands_sep;     /* Separatore per gruppi di cifre alla sinistra
                                           del carattere radice */
              char *grouping;     /* Ciascun elemento rappresenta il numero di
                                      cifre in un gruppo; elementi con indici più alti
                                      sono a sinistra. Un elemento con valore
                                      CHAR_MAX significa che non vengono fatti ulteriori
                                      raggruppamenti. Un elemento con valore 0 significa
                                      che il precedente elemento è usato per
                                      all groups alla sinistra. */

               /* /
            I campi rimanenti sono per informazioni monetarie */

               char *int_curr_symbol;   /* First three chars are a currency
                                           symbol from ISO 4217. Fourth char
                                           is the separator. Fifth char
                                           is '\0'. */
               char *currency_symbol;   /* Local currency symbol */
               char *mon_decimal_point; /* Radix character */
               char *mon_thousands_sep; /* Like thousands_sep above */
               char *mon_grouping;      /* Like grouping above */
               char *positive_sign;     /* Sign for positive values */
               char *negative_sign;     /* Sign for negative values */
               char  int_frac_digits;   /* International fractional digits */
               char  frac_digits;       /* Local fractional digits */
               char  p_cs_precedes;     /* 1 if currency_symbol precedes a
                                           positive value, 0 if succeeds */
               char  p_sep_by_space;    /* 1 if a space separates
                                           currency_symbol from a positive
                                           value */
               char  n_cs_precedes;     /* 1 if currency_symbol precedes a
                                           negative value, 0 if succeeds */
               char  n_sep_by_space;    /* 1 if a space separates
                                           currency_symbol from a negative
                                           value */
               /* Positive and negative sign positions:
                  0 Parentheses surround the quantity and currency_symbol.
                  1 The sign string precedes the quantity and currency_symbol.
                  2 The sign string succeeds the quantity and currency_symbol.
                  3 The sign string immediately precedes the currency_symbol.
                  4 The sign string immediately succeeds the currency_symbol. */
               char  p_sign_posn;
               char  n_sign_posn;
           };

   Estensioni POSIX.1-2008 all'API della localizzazione
       POSIX.1-2008 standardized a number of extensions to the locale API, based on implementations  that  first
       appeared  in  glibc 2.3. These extensions are designed to address the problem that the traditional locale
       APIs do not mix well with multithreaded applications and with applications that must deal  with  multiple
       locales.

       Le  estensioni  prendono  la  forma  di  nuove funzioni per creare e manipolare oggetti di localizzazione
       (newlocale(3), freelocale(3), duplocale(3), e uselocale(3)) e diverse  nuove  funzioni  di  libreria  col
       suffisso  "_l"  (p.es.,  toupper_l(3))  che  estendono  le  API  dipendenti  dalla localizzazione (p.es.,
       toupper(3)) per consentire la specificazione di un oggetto  di  localizzazione  che  dovrebbe  applicarsi
       quando si esegue la funzione.

AMBIENTE

       La  seguente  variabile  d'ambiente è usata da newlocale(3) e setlocale(3), e quindi influisce su tutti i
       programmi senza privilegi localizzati:

       LOCPATH
              A list of pathnames, separated by colons (':'), that should be used to find locale data.  If  this
              variable  is  set,  only  the  individual  compiled  locale data files from LOCPATH and the system
              default locale data path are used; any available locale archives are not used (see  localedef(1)).
              The  individual  compiled  locale data files are searched for under subdirectories which depend on
              the currently used locale. For example, when en_GB.UTF-8 is used for  a  category,  the  following
              subdirectories are searched for, in this order: en_GB.UTF-8, en_GB.utf8, en_GB, en.UTF-8, en.utf8,
              and en.

FILE

       /usr/lib/locale/locale-archive
              Ordinaria posizione predefinita dell'archivio della localizzazione.

       /usr/lib/locale
              Ordinario percorso predefinito per i singoli file compilati della localizzazione.

STANDARDS

       POSIX.1-2001.

VEDERE ANCHE

       iconv(1),   locale(1),   localedef(1),  catopen(3),  gettext(3),  iconv(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), charsets(7), unicode(7), utf-8(7)

TRADUZIONE

       La  traduzione  italiana  di  questa  pagina  di  manuale  è   stata   creata   da   Ottavio   G.   Rizzo
       <rizzo@pluto.linux.it>,  Giulio  Daprelà <giulio@pluto.it>, Elisabetta Galli <lab@kkk.it> e Marco Curreli
       <marcocurreli@tiscali.it>

       Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o  successiva
       per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

       Per  segnalare  errori  nella  traduzione  di  questa  pagina  di  manuale  inviare un messaggio a pluto-
       ildp@lists.pluto.it.

Linux man-pages 6.03                             5 febbraio 2023                                       locale(7)