Ero sivun ”Locale” versioiden välillä
LP (keskustelu | muokkaukset) (C ja POSIX -selitys; LANG parempi kuin LC_ALL; export bashissa) |
Pb (keskustelu | muokkaukset) |
||
Rivi 59: | Rivi 59: | ||
[[setenv]] LANG fi_FI.utf8 | [[setenv]] LANG fi_FI.utf8 | ||
Edellinen toimii | Edellinen toimii mm [[bash]]issa ja [[zsh]]:ssa, jälkimmäinen [[csh]]-sukuisissa tulkeissa. Komento voi olla hyvä lisätä komentotulkin käynnistys[[skripti]]in ([[bashrc]], [[zsh|zshrc]], [[tcsh|tcshrc]] ym), mikäli haluaa asetuksen pysyvän jatkuvasti voimassa. | ||
Käyttämällä LANG-muuttujaa yksittäiset arvot voi asettaa toisenlaisiksi, esimerkiksi virheviestit alkukielellä (englanniksi) ja aakkostaminen perinteiseen tapaan jossa 00INDEX.txt ja README hakemistolistauksen alussa: | Käyttämällä LANG-muuttujaa yksittäiset arvot voi asettaa toisenlaisiksi, esimerkiksi virheviestit alkukielellä (englanniksi) ja aakkostaminen perinteiseen tapaan jossa 00INDEX.txt ja README hakemistolistauksen alussa: |
Versio 30. maaliskuuta 2009 kello 15.52
Locale on komentoriviohjelma, joka tulostaa kieltä ja muita alueellisia tietoja koskevat ympäristömuuttujat ja näyttää saatavilla olevat lokaalivaihtoehdot.
Käyttö
Tulostetaan kieli- ja aluemuuttujien tiedot:
kayttaja@kone:~$ locale LANG=en_GB.utf8 LC_CTYPE="en_GB.utf8" LC_NUMERIC="en_GB.utf8" LC_TIME="en_GB.utf8" LC_COLLATE="en_GB.utf8" LC_MONETARY="en_GB.utf8" LC_MESSAGES="en_GB.utf8" LC_PAPER="en_GB.utf8" LC_NAME="en_GB.utf8" LC_ADDRESS="en_GB.utf8" LC_TELEPHONE="en_GB.utf8" LC_MEASUREMENT="en_GB.utf8" LC_IDENTIFICATION="en_GB.utf8" LC_ALL=en_GB.utf8
Tulostetaan saatavilla olevat lokaalit:
kayttaja@kone:~$ locale -a C en_AU.utf8 en_BW.utf8 en_CA.utf8 en_DK.utf8 en_GB.utf8 en_HK.utf8 en_IE.utf8 en_IN en_NZ.utf8 en_PH.utf8 en_SG.utf8 en_US.utf8 en_ZA.utf8 en_ZW.utf8 POSIX
Ympäristömuuttujat
Haluttua locale-ympäristöä voi säätää joukolla ympäristömuuttujia (katso yllä). Näistä erityisen kiinnostavia ovat seuraavat:
- LC_CTYPE: käytettävä merkistö, merkkien luokittelu sekä pienten ja isojen kirjainten vastaavuus
- LC_COLLATE aakkosjärjestys
- LC_MESSAGES: ohjelmien viestien kieli; jos käännös puuttuu viesti näytetään alkuperäisellä kielellä (käytännössä englanniksi)
- LANG: oletusympäristö
- LANGUAGE: GNU-projektin LANG-muuttuja, hyväksyy listan eri vaihtoehdoista
- LC_ALL: käytettävä ympäristö muista locale-muuttujista välittämättä
Lokaalien generointi
Kotikoneilla harvemmin on tarvetta tukea maailman kaikkia kieliä ja kulttuureja. Tilan säästämiseksi lokaaleja generoidaan usein käytettäviksi vain pyynnöstä. C ja POSIX (eli C-kielen ja POSIX-standardin oletuslokaalit, käytännössä samat) ovat aina käytössä, usein oletusarvoisesti liuta englanninkielisiä lokaaleja sekä asennuksessa valittu järjestelmän oletuskieli. Tuen saamiseksi halutut lokaalit pitää generoida. Tapa vaihtelee jakelusta toiseen.
Lokaalin asettaminen
Lokaalin voi asettaa tiettyyn arvoon komentotulkista riippuen (esimerkiksi) komennolla
export LANG=fi_FI.utf8
tai
setenv LANG fi_FI.utf8
Edellinen toimii mm bashissa ja zsh:ssa, jälkimmäinen csh-sukuisissa tulkeissa. Komento voi olla hyvä lisätä komentotulkin käynnistysskriptiin (bashrc, zshrc, tcshrc ym), mikäli haluaa asetuksen pysyvän jatkuvasti voimassa.
Käyttämällä LANG-muuttujaa yksittäiset arvot voi asettaa toisenlaisiksi, esimerkiksi virheviestit alkukielellä (englanniksi) ja aakkostaminen perinteiseen tapaan jossa 00INDEX.txt ja README hakemistolistauksen alussa:
export LC_MESSAGES=C LC_COLLATE=C
Käyttämällä muuttujaa LC_ALL näiden muiden muuttujien arvot jätetään huomiotta, mikä on kätevää esimerkiksi yksittäisen komennon ajamiseksi oletusympäristössä tai aiotussa oletusympäristössä:
env LC_ALL=C komento