Il file di definizione della localizzazione contiene tutte
le informazioni necessarie perchè il comando localedef(1)
possa convertirlo in un database binario di localizzazione.
Il file di definizione è formato da sezioni, ciascuna delle
quali descrive in dettaglio una categoria di localizzazione.
Il file di definizione della localizzazione inizia con
un'intestazione che può essere formata da queste parole chiave:
- <escape_char>
- è seguita da un carattere che viene usato come carattere di
protezione nel resto del file, per indicare quei caratteri da interpretare
in modo speciale. Il carattere predefinito è la barra inversa
(\).
- <comment_char>
- è seguita da un carattere che viene usato per indicare i commenti
nel resto del file; il carattere predefinito è il cancelletto
(#).
La definizione della localizzazione è suddivisa in una
parte per ogni categoria di localizzazione. Ogni parte può essere
copiata da un'altra localizzazione esistente o può essere definita ex
novo. Se la categoria dovesse essere copiata, l'unica parola chiave valida
nella definizione sarebbe copy seguita dal nome della localizzazione
da copiare.
Le seguenti sezioni di categoria sono definite da POSIX:
- LC_CTYPE
- LC_COLLATE
- LC_MESSAGES
- LC_MONETARY
- LC_NUMERIC
- LC_TIME
In aggiunta, dalla versione 2.2, la libreria GNU C supporta le
seguenti categorie non standard:
- LC_ADDRESS
- LC_IDENTIFICATION
- LC_MEASUREMENT
- LC_NAME
- LC_PAPER
- LC_TELEPHONE
La definizione per la categoria LC_ADDRESS inizia con la
stringa LC_ADDRESS nella prima colonna.
Sono ammesse le seguenti parole chiave:
- postal_fmt
- seguita da una stringa contenente i descrittori di campo che definiscono
il formato usato per gli indirizzi postali nella localizzazione. Sono
riconosciuti i seguenti descrittori di campo:
- %a
- c/o (presso) una persona o un'organizzazione.
- %f
- Nome della ditta.
- %d
- Nome dell'ufficio.
- %b
- Nome dell'edificio.
- %s
- Nome della via o dell'isolato (p.es. Japanese).
- %h
- Numero civico o denominazione.
- %N
- Inserisce un fine-riga se il valore del descrittore precedente non
è una stringa vuota; altrimenti lo ignora.
- %t
- Inserisce uno spazio se il valore del descrittore precedente non è
una stringa vuota; altrimenti lo ignora.
- %r
- Numero di stanza, denominazione della stanza.
- %e
- Numero del piano.
- %C
- Designazione del Paese, dalla parola chiave <country_post>.
- %z
- Numero di codice postale.
- %T
- Città.
- %S
- Stato, provincia o prefettura.
- %c
- Paese, preso dal record di dati.
Ogni descrittore di campo può avere una 'R' dopo '%' per
specificare che l'informazione è presa da una striinga della versione
romanizzata dell'entità.
- country_name
- seguita dal nome del paese nella lingua del documento corrente (p.es.,
"Deutschland per la localizzazione de_DE).
- country_post
- seguita dall'abbreviazione del paese (si veda CERT_MAILCODES).
- country_ab2
- seguita dall'abbreviazione in due lettere del paese (ISO 3166).
- country_ab3
- seguita dall'abbreviazione in tre lettere del paese (ISO 3166).
- country_num
- seguita dal codice numerico del paese (ISO 3166).
- country_car
- seguito dalla sigla automobilistica internazionale del paese.
- country_isbn
- seguito dal codice ISBN (per i libri).
- lang_name
- seguito dal nome della lingua nella lingua del documento corrente.
- lang_ab
- seguita dall'abbreviazione in due lettere della lingua (ISO 639).
- lang_term
- seguita dall'abbreviazione in tre lettere della lingua (ISO 639-2/T).
- lang_lib
- seguita dall'abbreviazione in tre lettere della lingua per uso
bibliografico (ISO 639-2/B). In generale le applicazioni dovrebbero
preferire lang_term a lang_lib.
La definizione LC_ADDRESS termina con la stringa END
LC_ADDRESS.
La definizione inizia con la stringa LC_CTYPE nella prima
colonna.
Sono ammesse le seguenti parole chiave:
- upper
- seguita da un elenco di lettere maiuscole. Le lettere da A a
Z sono incluse automaticamente. Inoltre non sono permessi caratteri
specificati come cntrl, digit, punct o
space.
- lower
- seguita da un elenco di lettere minuscole. Le lettere da a a
z sono incluse automaticamente. Inoltre non sono permessi caratteri
specificati come cntrl, digit, punct o
space.
- alpha
- seguita da un elenco di lettere. Tutti i caratteri specificati come
upper o lower sono inclusi automaticamente. Inoltre non sono
permessi caratteri cntrl, digit, punct o
space.
- digit
- seguita dai caratteri classificati come cifre. Sono ammesse solo le cifre
da 0 a 9. Esse sono incluse in modo predefinito in questa
classe.
- space
- seguita da un elenco di caratteri definiti come spazi vuoti. Non sono
ammessi caratteri specificati anche come upper, lower,
alpha, digit, graph o xdigit. I caratteri
<space>, <form-feed>, <newline>,
<carriage-return>, <tab> e
<vertical-tab> sono automaticamente inclusi.
- cntrl
- seguita da un elenco di caratteri di controllo. Non sono ammessi caratteri
specificati anche come upper, lower, alpha,
digit, punct, graph, print o
xdigit.
- punct
- seguito da un elenco di caratteri di punteggiatura. Non sono ammessi
caratteri specificati anche come upper, lower, alpha,
digit, cntrl, xdigit o lo <spazio>.
- graph
- seguita da un elenco di caratteri stampabili, escluso il carattere
<spazio>. I caratteri specificati come upper,
lower, alpha, digit, xdigit e punct
sono automaticamente inclusi. Non sono ammessi caratteri specificati come
cntrl.
- print
- seguita da un elenco di caratteri stampabili, incluso il carattere
<spazio>. I caratteri definiti come upper,
lower, alpha, digit, xdigit, punct e lo
<spazio> sono automaticamente inclusi. Non sono ammessi
caratteri specificati anche come cntrl.
- xdigit
- seguita da un elenco di caratteri classificati come cifre esadecimali.
Devono essere incluse le cifre decimali seguite da uno o più
insiemi di sei caratteri in ordine crescente. Sono inclusi in modo
predefinito gli intervalli: da 0 a 9, da a a
f, da A a F.
- blank
- seguita da un elenco di caratteri definiti come blank. I caratteri
<spazio> e <tab> sono automaticamente
inclusi.
- toupper
- seguita da un elenco di mappature da minuscole a maiuscole. Ogni mappature
è formata da una coppia di minuscole e maiuscole separate da una
, e racchiuse fra parentesi tonde. I componenti dell'elenco sono
separati con punti e virgola.
- tolower
- seguita da un elenco di mappature da maiuscole a minuscole. Se la parola
chiave tolower non è presente, viene usato l'inverso dell'elenco di
toupper.
La definizione di LC_CTYPE termina con la stringa END
LC_CTYPE.
La categoria LC_COLLATE definisce le regole per la
collazione dei caratteri. Non tutte le opzioni di POSIX sono implementate a
causa di limitazioni di libc.
La definizione inizia con la stringa LC_COLLATE nella prima
colonna.
Sono ammesse le seguenti parole chiave:
- collating-element
- seguita dalla definizione di un simbolo di elemento di collazione che
rappresenta un elemento di collazione multicarattere.
- collating-symbol
- seguita dalla definizione di simbolo di collazione che può essere
usato nelle istruzioni di ordinamento della collazione.
La definizione dell'ordinamento inizia con la riga:
- order_start
- seguita da un elenco di parole chiave scelte fra forward,
backward, o position. La definizione dell'ordinamento
è formata da righe che descrivono l'ordinamento e termina con la
parola chiave order_end.
La definizione di LC_COLLATE termina con la stringa END
LC_COLLATE.
Questa categoria contiene meta-informazioni sulla definizione
della localizzazione.
La definizione inizia con la stringa LC_IDENTIFICATION
nella prima colonna.
Sono ammesse le seguenti parole chiave:
- title
- seguita dal titolo del documento della localizzazione (p.es. "Maori
language locale for New Zealand").
- source
- seguita dal nome dell'organizzazione che mantiene il documento.
- address
- seguita dall'indirizzo dell'organizzazione che mantiene il documento.
- contact
- seguita dal nome della persona da contattare all'organizzazione che
mantiene il documento.
- email
- seguita dall'indirizzo di posta elettronica della persona o
dell'organizzazione che mantiene il documento.
- tel
- seguita dal numero di telefono (in formato internazionale)
dell'organizzazione che mantiene il documento.
- fax
- seguita dal numero di FAX (in formato internazionale) dell'organizzazione
che mantiene il documento.
- language
- seguita dal nome della lingua alla quale si applica il documento.
- territory
- seguita dal nome della nazione/area geografica alla quale si applica il
documento.
- audience
- seguita da una descrizione del pubblico a cui il documento è
destinato.
- application
- seguita da una descrizione di applicazioni particolari a cui è
rivolto il documento.
- abbreviation
- seguita dal nome breve del documento.
- revision
- seguita dal numero di revisione del documento.
- date
- seguita dalla data di revisione del documento.
Inoltre, per ciascuna categoria definita nel documento, dovrebbe
esserci una riga che inizia con la parola chiave category, seguita
da:
- una stringa che identifica questa definizione per la categoria di
localizzazione,
- un punto e virgola, e
- uno degli identificatori LC_*.
La definizione LC_IDENTIFICATION termina con la striinga
END LC_IDENTIFICATION.
La definizione inizia con la stringa LC_MESSAGES nella
prima colonna.
Sono ammesse le seguenti parole chiave:
- yesexpr
- seguita da un'espressione regolare che descrive possibili risposte
affermative (yes).
- noexpr
- seguita da un'espressione regolare che descrive possibili risposte
negative (no).
- yesstr
- seguita dalla stringa di output corrispondente a "yes".
- nostr
-
seguita dalla stringa di output corrispoondente a "no".
La definizione LC_MESSAGES termina con la stringa END
LC_MESSAGES.
La definizione inizia con la stringa LC_MEASUREMENT nella
prima colonna.
Sono ammesse le seguenti parole chiave:
- measurement
- seguta da un numero che identifica lo standard usato per le misure. Sono
riconosciuti i seguenti valori:
- 1
- Metrico.
- 2
- Sistema consuetudinario statunitense.
La definizione LC_MEASUREMENT termina con la stringa END
LC_MEASUREMENT.
La definizione inizia con la stringa LC_MONETARY nella
prima colonna.
Sono ammesse le seguenti parole chiave:
- int_curr_symbol
- seguita dal simbolo monetario internazionale. Deve essere una stringa di
quattro caratteri contenente il simbolo monetario internazionale come
definito dallo standard ISO 4217 (tre caratteri) seguito da un
separatore.
- currency_symbol
- seguita dal simbolo monetario locale.
- mon_decimal_point
- seguita dalla stringa che verrà usata come separatore decimale
nella formattazione di valori monetari.
- mon_thousands_sep
- seguita dalla stringa che verrà usata come separatore di gruppo
nella formattazione di valori monetari.
- mon_grouping
- seguita da una sequenza di numeri interi separati da punti e virgola che
descrivono la formattazione dei valori monetari. Vedi più avanti
grouping per i dettagli.
- positive_sign
- seguita da una stringa che verrà usata per indicare un segno
positivo per valori monetari.
- negative_sign
- seguita da una stringa che verrà usata per indicare un segno
negativo per valori monetari.
- int_frac_digits
- seguita dal numero di cifre decimali da usare formattando con
int_curr_symbol.
- frac_digits
- seguita dal numero di cifre decimali da usare formattando con
currency_symbol.
- p_cs_precedes
- seguita da un intero che indica la posizione di currency_symbol per
un valore monetario formattato non negativo:
- 0
- il simbolo segue il valore.
- 1
- il simbolo precede il valore.
- n_cs_precedes
- seguita da un intero che indica la posizione di currency_symbol per
un valore monetario formattato negativo. Sono riconosciuti gli stessi
valori di p_cs_precedes.
- int_p_cs_precedes
- seguita da un intero che indica la posizione di int_currency_symbol
per un valore monetario non negativo con formato internazionale. Sono
riconosciuti gli stessi valori di p_cs_precedes.
- int_n_cs_precedes
- seguita da un intero che indica la posizione di int_currency_symbol
per un valore monetario negativo con formato internazionale. Sono
riconosciuti gli stessi valori di p_cs_precedes.
- p_sep_by_space
- seguito da un intero che indica il modo in cui sono separati
currency_symbol, la stringa del segno, e il valore per un valore
monetario formattato non negativo. Sono riconosciuti i seguenti
valori:
- 0
- Nessuno spazio separa il simbolo monetario dal valore.
- 1
- Se il simbolo monetario e la stringa del segno sono adiacenti, uno spazio
li separa dal valore; altrimenti uno spazio separa il simbolo monetario
dal valore.
- 2
- Se il simbolo monetario e la stringa del segno sono adiacenti,, uno spazio
li separa dal valore; altrimenti uno spazio separa la stringa del segno
dal valore.
- n_sep_by_space
- seguita da un intero che indica il modo in cui sono separati
currency_symbol, la stringa del segno, e il valore per un valore
monetario formattato negativo. Sono riconosciuti gli stessi valori di
p_sep_by_space.
- int_p_sep_by_space
- seguita da un intero che indica il modo in cui sono separati
int_currency_symbol, la stringa del segno, e il valore per un
valore monetario non negativo in formato internazionale. Sono riconosciuti
gli stessi valori di p_sep_by_space.
- int_n_sep_by_space
- seguita da un intero che indica il modo in cui sono separati
int_currency_symbol, la stringa del segno, e il valore per un
valore monetario negativo in formato internazionale. Sono riconosciuti gli
stessi valori di p_sep_by_space.
- p_sign_posn
- seguita da un intero che indica dove dovrebbero essere collocati i
positive_sign per un valore monetario non negativo:
- 0
- Le parentesi racchiudono la quantità e il currency_symbol o
l'int_curr_symbol.
- 1
- La stringa di segno precede la quantità e il currency_symbol
o l'int_curr_symbol.
- 2
- La stringa di segno segue la quantità e il currency_symbol o
l'int_curr_symbol.
- 3
- La stringa di segno precede il currency_symbol o
l'int_curr_symbol.
- 4
- La stringa di segno segue il currency_symbol o
l'int_curr_symbol.
- n_sign_posn
- seguita da un intero che indica dove dovrebbe essere collocato il
negative_sign per un valore monetario negativo. Sono riconosciuti
gli stessi valori di p_sign_posn.
- int_p_sign_posn
- seguita da un intero che indica dove dovrebbe essere collocato il
negative_sign per un valore monetario non negativo in formato
internazionale. Sono riconosciuti gli stessi valori di
p_sign_posn.
- int_n_sign_posn
- seguita da un intero che indica dove dovrebbe essere collocato il
negative_sign per un valore monetario negativo in formato
internazionale. Sono riconosciuti gli stessi valori di
p_sign_posn.
La definizione di LC_MONETARY termina con la stringa END
LC_MONETARY.
La definizione inizia con la stringa LC_NAME nella prima
colonna.
Sono ammesse diverse parole chiave, ma solo name_fmt
è obbligatoria. Altre parole chiave sono necessarie solo se ci sono
convenzioni consolidate per usare la formula di apertura corrispondente
nella localizzazione corrente. Le parole chiave ammesse sono le
seguenti:
- name_fmt
- seguita da una stringa contenente i descrittori di campo che definiscono
il formato usato per i nome nella localizzazione. Sono riconosciuti i
seguenti descrittori di campo:
- %f
- Cognome/i.
- %F
- Cognomi in maiuscolo.
- %g
- Nome di battesimo.
- %G
- Iniziale del nome di battesimo.
- %l
- Nome di battesimo con lettere latine.
- %o
- Diminutivo del nome.
- %m
- Secondo nome.
- %M
- Iniziali del secondo nome.
- %p
- Professione.
- %s
- Titolo nelle formule di apertura, per esempio "Dottor".
- %S
- Abbreviazione del titolo, per es. "Sig." o
"Dott.".
- %d
- Formule di apertura, secondo le convenzioni FDCC.
- %t
- Se il descrittore di campo precedente è una stringa vuota, la
stringa vuota, altrimenti un carattere di spazio.
- name_gen
- seguito dal titolo generale valido per entrambi i sessi.
- name_mr
- seguito dal titolo per gli uomini.
- name_mrs
- seguito dal titolo per le donne sposate.
- name_miss
- seguito dal titolo per le donne nubili.
- name_ms
- seguito dal titolo valido per tutte le donne.
La definizione LC_NAME termina con la stringa END
LC_NAME.
La definizione inizia con la stringa LC_NUMERIC nella prima
colonna.
Sono ammesse le seguenti parole chiave:
- decimal_point
- seguita dalla stringa che verrà usata come separatore decimale
nella formattazione di valori numerici.
- thousands_sep
- seguita dalla stringa che verrà usata come separatore di gruppo
nella formattazione di valori numerici.
- grouping
- seguita da una sequenza di numeri interi separati da punti e virgola che
descrivono la formattazione dei valori numerici.
- Ogni numero specifica il numero di cifre in un gruppo. Il primo numero
definisce la grandezza del gruppo immediatamente a sinistra del
delimitatore decimale. I numeri successivi definiscono i gruppi a sinistra
del gruppo precedente. Se l'ultimo numero intero non è -1, la
grandezza del gruppo precedente (se c'è) è usata
reiteratamente per i restanti gruppi di cifre. Se l'ultimo numero intero
è -1, non viene effettuato nessun raggruppamento ulteriore.
La definizione di LC_NUMERIC termina con la stringa END
LC_NUMERIC.
La definizione inizia con la stringa LC_PAPER nella prima
colonna.
Sono ammesse le seguenti parole chiave:
- height
- seguita dall'altezza, in millimetri, del formato standard di carta.
- width
- seguita dalla larghezza, in millimetri, del formato standard di
carta.
La definizione LC_PAPER termina con la stringa END
LC_PAPER.
La definizione inizia con la stringa LC_TELEPHONE nella
prima colonna.
Sono ammesse le seguenti parole chiava:
- tel_int_fmt
- seguita da una stringa che contiene i descrittori di campo che
identificano il formato usato per comporre i numeri telefonici
internazionali. Sono riconosciuti i seguenti descrittori di campo:
- %a
- Codice di area senza il prefisso nazionale (il prefisso è spesso
"0").
- %A
- Codice di area incluso il prefisso nazionale.
- %l
- Numero locale (all'interno del codice di area).
- %e
- Estensione (al numero locale).
- %c
- Codice del paese.
- %C
- Eventuale codice "carrier service" usato per chiamare
all'estero.
- %t
- Se il descrittore di campo precedente è una striinga vuota, la
stringa vuota, altrimenti uno spazio.
- tel_dom_fmt
- seguita da una stringa che contiene i descrittori di campo che
identificano il formato usato per comporre i numeri telefonici per uso
domestico. I descrittori di campo riconosciuti sono gli stessi di
tel_int_fmt.
- int_select
- seguita dal prefisso usato per chiamare i numeri telefonici
internazionali.
- int_prefix
- seguita dal prefisso usato dagli altri paesi per chiamare questo
paese.
La definizione LC_TELEPHONE termina con la stringa END
LC_TELEPHONE.
La definizione inizia con la stringa LC_TIME nella prima
colonna.
Sono ammesse le seguenti parole chiave:
- abday
- seguita da un elenco di abbreviazione dei giorni della settimana. L'elenco
inizia con il primo giorno della settimana come specificato da week
(il giorno predefinito è la domenica). Vedi NOTE.
- day
- seguita da un elenco dei giorni della settimana. L'elenco inizia con il
primo giorno della settimana come specificato da week (il giorno
predefinito è la domenica). Vedi NOTE.
- abmon
- seguita da un elenco di abbreviazione dei mesi.
- mon
- seguita da un elenco dei mesi.
- am_pm
- seguita dalla rappresentazione appropriata delle stringhe am e
pm. Questa dovrebbe essere lasciata vuota per le localizzazioni che
non usano la convenzione AM/PM.
- d_t_fmt
- seguita dal formato appropriato per la data e per l'ora.
- d_fmt
- seguita dal formato appropriato per la data.
- t_fmt
- seguita dal formato appropriato per l'ora.
- t_fmt_ampm
- seguita dal formato appropriato per l'ora col sistema a 12 ore. Questa
dovrebbe essere lasciata vuota per le localizzazioni che non usano la
convenzione AM/PM.
- week
- seguita da un elenco di tre valori: il numero di giorni in una settimana
(il numero predefinito è 7), la data di inizio della settimana (il
giorno predefinito è la domenica) e la lunghezza minima della prima
settimana dell'anno (il valore predefinito è 4). Per quanto
riguarda l'inizio della settimana, 19971130 dovrebbe essere usato
per la domenica e 19971201 dovrebbe essere usato per il
lunedì. Vedi NOTE.
- first_weekday
(a partire da glibc 2.2)
- seguita dal numero del primo giorno preso dall'elenco day da
mostrare nel calendario. Il valore predefinito 1 può
corrispondere a domenica o lunedì in base al valore della seconda
voce nell'elenco week. Vedi NOTE.
- first_workday
(a partire da glibc 2.2)
- seguita dal numero del primo giorno lavorativo preso dall'elenco
day. Il valore predefinito è 2. Vedi NOTE
- cal_direction
- seguita da un valore che indica la direzione per la lettura delle date del
calendario, come appresso:
- 1
- da sinistra verso destra partendo dall'alto
- 2
- dall'alto verso il basso partenda da sinistra
- 3
- da destra verso sinistra partenda dall'alto
- date_fmt
- seguita dalla rappresentazione della data appropriata per
date(1).
La definizione di LC_TIME termina con la stringa END
LC_TIME.