.\" -*- coding: UTF-8 -*- .\" Copyright (c) 1993 by Thomas Koenig (ig25@rz.uni-karlsruhe.de) .\" and Copyright (C) 2014 Michael Kerrisk .\" .\" %%%LICENSE_START(VERBATIM) .\" Permission is granted to make and distribute verbatim copies of this .\" manual provided the copyright notice and this permission notice are .\" preserved on all copies. .\" .\" Permission is granted to copy and distribute modified versions of this .\" manual under the conditions for verbatim copying, provided that the .\" entire resulting derived work is distributed under the terms of a .\" permission notice identical to this one. .\" .\" Since the Linux kernel and libraries are constantly changing, this .\" manual page may be incorrect or out-of-date. The author(s) assume no .\" responsibility for errors or omissions, or for damages resulting from .\" the use of the information contained herein. The author(s) may not .\" have taken the same level of care in the production of this manual, .\" which is licensed free of charge, as they might when working .\" professionally. .\" .\" Formatted or processed versions of this manual, if unaccompanied by .\" the source, must acknowledge the copyright and authors of this work. .\" %%%LICENSE_END .\" .\" Modified Sat Jul 24 17:28:34 1993 by Rik Faith .\" Modified Sun Jun 01 17:16:34 1997 by Jochen Hein .\" .\" Modified Thu Apr 25 00:43:19 2002 by Bruno Haible .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH LOCALE 7 "6 marzo 2019" Linux "Manuale del programmatore di Linux" .SH NOME locale \- Descrizione del supporto multi\-lingue .SH SINTASSI .nf \fB#include \fP .fi .SH 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. .PP L'header \fI\fP dichiara i tipi di dati, funzioni e macro utili a questo scopo. .PP Le funzioni che vengono dichiarate sono \fBsetlocale\fP(3) per impostare la localizzazione attuale e \fBlocaleconv\fP(3) per ottenere informazioni sulla formattazione dei numeri. .PP Le differenti categorie di informazioni sulla localizzazione di cui un programma potrebbe aver bisogno vengono dichiarate come macro. Usandole come primo argomento alla funzione \fBsetlocale\fP(3) è possibile impostare queste variabili alla localizzazione desiderata: .TP \fBLC_ADDRESS\fP (estensione GNU, a partire da glibc 2.2) .\" See ISO/IEC Technical Report 14652 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 \fBnl_langinfo\fP(3) per richiamare elementi non standard, come \fB_NL_ADDRESS_COUNTRY_NAME\fP (nome del paese, nella lingua della localizzazione) e \fB_NL_ADDRESS_LANG_NAME\fP (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 \fI\fP.) .TP \fBLC_COLLATE\fP 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 \fBstrcoll\fP(3) e \fBstrxfrm\fP(3), che servono per confrontare stringhe nell'alfabeto locale. Ad esempio, la «ß» tedesca viene ordinata come «ss». .TP \fBLC_CTYPE\fP 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 \fBiconv\fP(1) e \fBiconv\fP(3). Modifica il comportamento delle funzioni che maneggiano e classificano caratteri, come \fBisupper\fP(3) e \fBtoupper\fP(3), e le funzioni per caratteri multibyte come \fBmblen\fP(3) o \fBwctomb\fP(3). .TP \fBLC_IDENTIFICATION\fP (estensione GNU, a partire da glibc 2.2) .\" See ISO/IEC Technical Report 14652 Cambia le impostazioni inerenti ai metadati per la localizzazione. Le applicazioni che necessitano di questa informazione possono usare \fBnl_langinfo\fP(3) per richiamare elementi non standard, come \fB_NL_IDENTIFICATION_TITLE\fP (titolo di questo documento di localizzazione) e \fB_NL_IDENTIFICATION_TERRITORY\fP (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 \fI\fP.) .TP \fBLC_MONETARY\fP Questa categoria determina la formattazione usata per i valori numerici di tipo monetario. Cambia l'informazione restituita da \fBlocaleconv\fP(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 \fBstrfmon\fP(3). .TP \fBLC_MESSAGES\fP 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 \fBgettext\fP(3), \fBngettext\fP(3), e \fBrpmatch\fP(3) per facilitare l'impiego di queste informazioni. La famiglia di funzioni GNU gettext rispetta anche la variabile d'ambiente \fBLANGUAGE\fP (che contiene un elenco di localizzazioni, separate da virgole) se la categoria è stata impostata ad una localizzazione valida diversa da \fB"C"\fP. Questa categoria influisce anche sul comportamento di \fBcatopen\fP(3). .TP \fBLC_MEASUREMENT\fP (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 \fBnl_langinfo\fP(3) per richiamare l'elemento non standard \fB_NL_MEASUREMENT_MEASUREMENT\fP che restituisce un puntatore a un carattere che ha il valore 1 (metrico) o 2 (sistema consuetudinario statunitense). .TP \fBLC_NAME\fP (estensione GNU, a partire da glibc 2.2) .\" See ISO/IEC Technical Report 14652 Cambia le impostazioni che definiscono i formati usati per rivolgersi alle persone. Le applicazioni possono usare \fBnl_langinfo\fP(3) per richiamare elementi non standard, come gli elementi \fB_NL_NAME_NAME_MR\fP (titolo generico per gli uomini) e \fB_NL_NAME_NAME_MS\fP (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 \fI\fP.) .TP \fBLC_NUMERIC\fP Questa categoria determina le regole di formattazione usate per valori numerici non monetari \(emper esempio, il separatore delle migliaia e il carattere di radice (un punto nella maggior parte dei paesi di lingua inglese, una virgola in molte altre regioni). Ingfluisce su funzioni come \fBprintf\fP(3), \fBscanf\fP(3), e \fBstrtod\fP(3). Queste informazioni possono anche essere lette tramite la funzione \fBlocaleconv\fP(3). .TP \fBLC_PAPER\fP (estensione GNU, a partire da glibc 2.2) .\" See ISO/IEC Technical Report 14652 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 \fBnl_langinfo\fP(3) per richiamare gli elementi non standard \fB_NL_PAPER_WIDTH\fP e \fB_NL_PAPER_HEIGHT\fP, che restitiuscono valori \fIinteri\fP che definiscono le dimensioni in millimetri. .TP \fBLC_TELEPHONE\fP (estensione GNU, a partire da glibc 2.2) .\" See ISO/IEC Technical Report 14652 Cambia le impostazioni che descrivono i formati da usare per i servizi telefonici. Le applicazioni che necessitano di questa informazione possono usare \fBnl_langinfo\fP(3) per richiamare lementi non standard, come \fB_NL_TELEPHONE_INT_PREFIX\fP (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 \fI\fP.) .TP \fBLC_TIME\fP 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 \fBstrftime\fP(3) e \fBstrptime\fP(3). .TP \fBLC_ALL\fP Vale per tutte le macro precedenti. .PP Se il secondo argomento a \fBsetlocale\fP(3) è la stringa vuota \fI""\fP la localizzazione predefinita è determinata come segue: .IP 1. 3 Se è presente una variabile d'ambiente non nulla \fBLC_ALL\fP, viene usato il valore di \fBLC_ALL\fP. .IP 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. .IP 3. Se è presente una variabile d'ambiente non nulla \fBLANG\fP, viene usato il valore di \fBLANG\fP. .PP I valori che descrivono la formattazione locale dei numeri sono disponibili in una \fIstruct lconv\fP restituita dalla funzione \fBlocaleconv\fP(3), che è così dichiarata: .PP .in +4n .EX 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; /* I primi tre caratteri sono un simbolo di valuta definito da ISO 4217. Il quarto carattere è il separatore. Il quinto carattere è \(aq\e0\(aq. */ char *currency_symbol; /* Simbolo di valuta locale */ char *mon_decimal_point; /* Carattere radice */ char *mon_thousands_sep; /* Come \fIthousands_sep\fP sopra */ char *mon_grouping; /* Come \fIgrouping\fP sopra */ char *positive_sign; /* Segno per valori positivi */ char *negative_sign; /* Segno per valori negativi */ char int_frac_digits; /* Cifre frazionarie inernazionali */ char frac_digits; /* Cifre frazionarie locali */ char p_cs_precedes; /* 1 se il simbolo di valuta precede un valore positivo, 0 se lo segue */ char p_sep_by_space; /* 1 se uno spazio separa il simbolo di valuta da un valore positivo */ char n_cs_precedes; /* 1 se il simbolo di valuta precede un valore negativo, 0 se lo segue */ char n_sep_by_space; /* 1 se uno spazio separa il simbolo di valuta da un valore negativo */ /* Posizione dei segni positivo e negativo: 0 Parentesi delimitano la quantità e il simbolo di valuta 1 Il segno precede la quantità e il simbolo di valuta. 2 Il segno segue la quantità e il simbolo di valuta. 3 Il segno è posto subito prima del simbolo di valuta. 4 Il segno è posto subito dopo del simbolo di valuta. */ char p_sign_posn; char n_sign_posn; }; .EE .in .SS "Estensioni POSIX.1\-2008 all'API della localizzazione" POSIX.1\-2008 ha fissato norme relative a parecchie estensioni all'API, sulla base di implementazioni realizzate per la prima volta nella versione 2.3 della libreria GNU C. Queste estensioni sono progettate per cercare di risolvere il problema che la tradizionale API di localizzazione non è adeguatamente compatibile con applicazioni multithread [che vengono eseguite in parallelo su più di una CPU] e con applicazioni che devono gestire più di una localizzazione alla volta. .PP Le estensioni prendono la forma di nuove funzioni per creare e manipolare oggetti di localizzazione (\fBnewlocale\fP(3), \fBfreelocale\fP(3), \fBduplocale\fP(3), e \fBuselocale\fP(3)) e diverse nuove funzioni di libreria col suffisso "_l" (p.es., \fBtoupper_l\fP(3)) che estendono le API dipendenti dalla localizzazione (p.es., \fBtoupper\fP(3)) per consentire la specificazione di un oggetto di localizzazione che dovrebbe applicarsi quando si esegue la funzione. .SH AMBIENTE La seguente variabile d'ambiente è usata da \fBnewlocale\fP(3) e \fBsetlocale\fP(3), e quindi influisce su tutti i programmi senza privilegi localizzati: .TP \fBLOCPATH\fP Una lista di nomi di percorso, separati da due punti (\(aq:\(aq), da usare per trovare i dati della localizzazione. Se questa variabile è impostata, vengono usati solo i singoli file compilati dei dati della localizzazione presenti in \fBLOCPATH\fP e il percorso predefinito di sistema per i dati della localizzazione; non viene usato nessuno degli archivi della localizzazione disponibili (vedi \fBlocaledef\fP(1)). I singoli file compilati dei dati della localizzazione vengono cercati nelle sottodirectory che dipendono dalla localizzazione correntemente usata. Per esempio, quando viene usato \fIen_GB.UTF\-8\fP per una categoria, viene fatta la ricerca nelle seguenti sottodirectory, in quest'ordine: \fIen_GB.UTF\-8\fP, \fIen_GB.utf8\fP, \fIen_GB\fP, \fIen.UTF\-8\fP, \fIen.utf8\fP e \fIen\fP. .SH FILE .TP \fI/usr/lib/locale/locale\-archive\fP Ordinaria posizione predefinita dell'archivio della localizzazione. .TP \fI/usr/lib/locale\fP Ordinario percorso predefinito per i singoli file compilati della localizzazione. .SH "CONFORME A" .\" .\" The GNU gettext functions are specified in LI18NUX2000. POSIX.1\-2001. .SH "VEDERE ANCHE" \fBiconv\fP(1), \fBlocale\fP(1), \fBlocaledef\fP(1), \fBcatopen\fP(3), \fBgettext\fP(3), \fBiconv\fP(3), \fBlocaleconv\fP(3), \fBmbstowcs\fP(3), \fBnewlocale\fP(3), \fBngettext\fP(3), \fBnl_langinfo\fP(3), \fBrpmatch\fP(3), \fBsetlocale\fP(3), \fBstrcoll\fP(3), \fBstrfmon\fP(3), \fBstrftime\fP(3), \fBstrxfrm\fP(3), \fBuselocale\fP(3), \fBwcstombs\fP(3), \fBlocale\fP(5), \fBcharsets\fP(7), \fBunicode\fP(7), \fButf\-8\fP(7) .SH COLOPHON Questa pagina fa parte del rilascio 5.10 del progetto Linux \fIman\-pages\fP. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l'ultima versione di questa pagina si trovano su \%https://www.kernel.org/doc/man\-pages/. .SH TRADUZIONE La traduzione italiana di questa pagina di manuale è stata creata da Ottavio G. Rizzo , Giulio Daprelà , Elisabetta Galli e Marco Curreli . Questa traduzione è documentazione libera; leggere la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Versione 3 .UE 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 .MT pluto-ildp@lists.pluto.it .ME .