UNPKG

arch-wiki-md-repo

Version:

All arch-wiki articles in markdown format, updated every two days.

194 lines (122 loc) 8.06 kB
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 * [1 Abilitare il Locale necessario](#Abilitare_il_Locale_necessario) * [1.1 Esempio IT Italiano](#Esempio_IT_Italiano) * [2 Impostare il locale a livello di sistema](#Impostare_il_locale_a_livello_di_sistema) * [3 Impostare un locale di ripiego](#Impostare_un_locale_di_ripiego) * [4 Impostazione dei locali utente](#Impostazione_dei_locali_utente) * [5 Impostare il collation](#Impostare_il_collation) * [6 Impostare il primo giorno della settimana](#Impostare_il_primo_giorno_della_settimana) * [7 Risoluzione dei problemi](#Risoluzione_dei_problemi) * [7.1 Il mio terminale non supporta UTF-8](#Il_mio_terminale_non_supporta_UTF-8) * [7.1.1 Xterm non supporta UTF-8](#Xterm_non_supporta_UTF-8) * [7.1.2 Gnome-terminal o rxvt-unicode non supportano UTF-8](#Gnome-terminal_o_rxvt-unicode_non_supportano_UTF-8) * [8 Altre Fonti](#Altre_Fonti) ## 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 ``` **Suggerimento:** Anche se è molto probabile che una sola lingua è utilizzata sul vostro computer, può essere utile o addirittura necessario consentire anche altri locali. Se si sta eseguendo un sistema multi-utente, con gli utenti che non parlano inglese, il loro locale individuale dovrebbe almeno essere supportata dal sistema. ### 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`. **Nota:** `/etc/locale.conf` non esiste per impostazione predefinita e va creato manualmente. **Suggerimento:** Se l'output del locale è di vostro gradimento durante l'installazione, è possibile salvare un po 'di tempo eseguendo : `# locale > /etc/locale.conf` mentre si è ancora in ambiente chroot. `/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)](https://jlk.fjfi.cvut.cz/arch/manpages/man/localectl.1) e [locale.conf(5)](https://jlk.fjfi.cvut.cz/arch/manpages/man/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](http://www.gnu.org/software/gettext/manual/gettext.html#The-LANGUAGE-variable) 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](/index.php/Mlterm "Mlterm") * [rxvt-unicode](/index.php/Rxvt-unicode "Rxvt-unicode") * [xterm](/index.php/Xterm "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. ## Altre Fonti * [Guida di Gentoo Linux sulla localizzazione](http://www.gentoo.org/doc/en/guide-localization.xml) * [Gentoo Wiki Archives: Locales](http://www.gentoo-wiki.info/Locales) * [Test interattivo ICU sull'ordinamento](http://demo.icu-project.org/icu-bin/locexp?_=en_US&x=col) * [Free Standards Group Open Internationalisation Initiative](http://www.openi18n.org/) * [*The Single UNIX Specification* definizione di locale](http://pubs.opengroup.org/onlinepubs/007908799/xbd/locale.html) dell'Open Group * [Variabili d'ambiente Locale](https://help.ubuntu.com/community/EnvironmentVariables#Locale_setting_variables)