Locale (Italiano)
I Locale sono utilizzati in linux per definire la lingua che l'utente utilizza. Così come i Locale definiscono il set di caratteri in uso, impostare il locale corretto è particolarmente importante se il linguaggio contiene caratteri non ASCII.
Il nome dei Locale sono definiti utilizzando il seguente formato:
<lingua>_<territorio>.<codeset>[@<modifificatori>]
Contents
Abilitare il Locale necessario
Prima che un locale possa essere utilizzato nel sistema, deve essere attivato. Per elencare tutte le versioni locali disponibili, utilizzare il comando:
$ locale -a
Per abilitare un locale, decommentare il nome del locale nel file /etc/locale.gen. Questo file contiene tutte le variabili locali che possono essere utilizzati sul sistema. Ripristinare il processo per disabilitare un locale. Dopo che i locali necessari sono abilitati, il sistema deve essere aggiornato con le nuove impostazioni locali:
# locale-gen
Per mostrare i locale che sono attualmente in uso, digitare:
$ locale
Esempio IT Italiano
Per prima cosa decommentare il seguente locale in /etc/locale.gen:
it_IT.UTF-8 UTF-8
Successivamente aggiornare il sistema come root:
# locale-gen
Impostare il locale a livello di sistema
Per definire il locale a livello di sistema utilizzato sul sistema, impostare la variabile LANG in /etc/locale.conf:
locale.conf contiene un elenco per l'assegnazione delle variabile di ambiente in una nuova linea separata: oltre LANG, supporta tutte le variabili LC_*, con l'eccezione di LC_ALL.
/etc/locale.conf non esiste per impostazione predefinita e va creato manualmente./etc/locale.conf
LANG="it_IT.UTF-8"
Ecco un esempio di configurazione avanzata:
/etc/locale.conf
# Abilitare UTF-8 con impostazioni Italiane. LANG="it_IT.UTF-8" # Mantenere l'ordine predefinito (ad esempio i file che iniziano con un '.' # dovrebbe apparire all'inizio di un elenco di directory). LC_COLLATE="C" # Impostare la data (test con "date +%c") LC_TIME="it_IT.UTF-8"
È possibile impostare la lingua di default in locale.conf anche usando localectl, per esempio:
# localectl set-locale LANG="it_IT.UTF8"
Si veda localectl(1) e locale.conf(5) per maggiori dettagli.
Queste modifiche avranno effetto dopo il riavvio del sistema e sarà impostato per le singole sessioni di login .
Impostare un locale di ripiego
Nei programmi che utilizzano gettext per il rispetto delle traduzioni, l'opzione LANGUAGE è aggiunta alle consuete variabili. Questo permette agli utenti di specificare una lista di localizzazioni che verranno utilizzati in questo ordine. Se una traduzione per il locale preferito non è disponibile, un altro da un locale simile verrà usato al posto di quello di default. Ad esempio, un utente italiano potrebbe voler ricadere sull'ortografia britannica, piuttosto che su quella degli Stati Uniti:
~/.bashrc
export LANGUAGE="it_IT:en_GB:en"
oppure a livello di sistema
/etc/locale.conf
LANG="it_IT" export LANGUAGE="it_IT:en_GB:en"
Impostazione dei locali utente
Come abbiamo accennato in precedenza, alcuni utenti potrebbero voler definire un locale diverso da quello a livello di sistema locale.
Lo script etc/profile.d/locale.sh sostituisce il locale 'a livello di sistema"' con quello riscontrato in ~/.config/locale.conf. Questo file non esiste per impostazione predefinita.
~/.config/locale.conf
LANG="it_IT.UTF-8" LANGUAGE="it_IT.UTF-8"
Impostare il collation
L'ordinamento (collation), è un po 'diverso. L'ordinamento è una stupida bestia poiché i vari locale si comportano in modo diverso. Per ovviare a potenziali problemi, Arch utilizza impostare LC_COLLATE="C" in /etc/profile. Tuttavia, questo metodo è obsoleto. Per abilitare questo comportamento, è sufficiente aggiungere la seguente variabile in /etc/locale.conf:
LC_COLLATE="C"
Ora il comando ls ordinerà i dotfile per primi, seguito da nomi di file che iniziano con maiuscole e minuscole. Si noti che senza una opzione LC_COLLATE, le applicazioni ripiegano sul valore di locale specificato da LC_ALL o LANG, ma l'impostazione di LC_COLLATE verranno sovrascritti se LC_ALL è impostato. Se ciò crea dei problemi, assicurarsi che LC_ALL non sia impostato aggiungendo quanto segue in /etc/profile :
export LC_ALL=
Si noti che LC_ALL è l'unica variabile LC che non deve essere impostata in /etc/locale.conf.
Impostare il primo giorno della settimana
In molti paesi il primo giorno della settimana è Lunedì. Per regolare questo comportamento, modificare o aggiungere le seguenti righe nella sezione LC_TIME in /usr/share/i18n/locales/<tuo_locale>:
week 7;19971130;5 first_weekday 2 first_workday 2
E aggiornare il sistema:
# locale-gen
Risoluzione dei problemi
Il mio terminale non supporta UTF-8
Sfortunatamente alcuni terminali non supportano UTF-8. In questo caso dovreste utilizzare un terminale differente. Questa è una lista di alcuni terminali che hanno il supporto per UTF-8:
- vte-based terminals
- gnustep-terminal
- konsole
- mlterm
- rxvt-unicode
- xterm
Xterm non supporta UTF-8
xterm supporta UTF-8 solo se eseguito come uxterm o xterm -u8.
Gnome-terminal o rxvt-unicode non supportano UTF-8
È necessario avviare queste applicazioni da un locale UTF-8 o cadrà il supporto ad UTF-8. Abilitare il en_US.UTF-8 locale (o il vostro locale UTF-8 alternativo) come spiegato precedentemente e impostarlo come la lingua predefinita, quindi riavviare.