Upozornění :
Tento dokument již neplatí a není udržován.
|
Lokalizace Gentoo Linuxu
1.
Časové pásmo
Aby pracovala indikace času správně, musíte nastavit časovou zónu,
ve které pracujete. Seznam dostupných časových pásem je v adresáři
/usr/share/zoneinfo, nastavení se provádí v souboru
/etc/conf.d/clock. Nepoužívejte prosím soubory
/usr/share/zoneinfo/Etc/GMT*, protože jejich jména nevystihují
jejich obsah — například GMT-8 je ve skutečnosti GMT+8.
Výpis kódu 1.1: Nastavení časové zóny |
# ls /usr/share/zoneinfo
# nano -w /etc/conf.d/clock
TIMEZONE="Europe/Prague"
# date
Wed Mar 8 00:46:05 CET 2006
|
Poznámka:
Ujistěte se, že zkratka časové zóny (v tomto případě "CET") odpovídá Vaší
oblasti. V Česku je to CET, případně CEST v době letního času.
|
Poznámka:
V rc souboru svého oblíbeného shellu (pro bash .bash_profile)
můžete nastavit hodnotu TZ na cokoliv po
/usr/share/zoneinfo; dosáhnete tím nastavení časové zóny pro
konkrétního uživatele. V tomto případě byste měli použít
TZ="Europe/Prague".
|
2.
Hardwarové hodiny
Na většině instalací systému Gentoo jsou hardwarové hodiny nastaveny na čas UTC
(případně GMT, Greenwich Mean Time), a při určování správného místního času se
berou do úvahy informace o časové zóně. Pokud z nějakého důvodu
potřebujete, aby čas hardwarových hodin nebyl v UTC, musíte v souboru
/etc/conf.d/clock změnit hodnotu proměnné CLOCK
z UTC na local.
Výpis kódu 2.1: Místní čas vs. GMT |
CLOCK="UTC"
CLOCK="local"
|
3.
Lokalizační nastavení
Co to je?
Lokalizační nastavení (locales) jsou informace, kterými se řídí většina
programů při rozhodování o nastaveních závislých na zemi nebo jazyku. Jsou
součástí systémových knihoven a na většině systémů jsou uloženy v adresáři
/usr/share/locale. Jejich jména jsou většinou pojmenovány
ab_CD, kde ab je dvoupísmenný (někdy třípísmenný) kód jazyka (viz
norma ISO-639) a CD dvoupísmenný kód země dle ISO-3166.
Proměnné prostředí pro místní nastavení
Lokalizační nastavení jsou nastavována pomocí proměnných prostředí, typicky
v souboru /etc/env.d/02locale (nastavení pro celý systém) a
~/.bashrc (nastavení specifická pro konkrétního uživatele).
Následující tabulka podává přehled proměnných ovlivňujících všechna možná
nastavení; proměnné s největší prioritou (tj. ty, které potlačí nastavení
jiných proměnných) jsou na začátku. Všechny proměnné akceptují výše popsaný
zápis ab_CD.
| Jméno proměnné |
Vysvětlení |
| LC_ALL |
Určuje všechna lokalizační nastavení najednou. Tato proměnná je na nejvyšší
úrovni, její zadání potlačí jiná nastavení.
|
| LC_COLLATE |
Určuje pořadí znaků v abecedě; ovlivní například setřídění výpisu
adresáře.
|
| LC_CTYPE |
Určuje vlastnosti zacházení se znaky, například které znaky jsou součástí
abecedy, co jsou čísla a tak dále. Rovněž může nastavit znakovou stránku.
|
| LC_MESSAGES |
Lokalizace programů používajících lokalizaci zpráv (většina GNU programů,
viz další kapitola, kde naleznete informace i o programech, které se tímto
řídí, a poradíme Vám, jak si poradit s ostatními).
|
| LC_MONETARY |
Určuje jednotky měny a formátování finančních částek. |
| LC_NUMERIC |
Určuje formátování číselných hodnot nesouvisejících s měnou. Ovlivní
věci jako oddělovače tisíců a desetinnou čárku.
|
| LC_TIME |
Určuje formátování dat a časových údajů. |
| LC_PAPER |
Určuje výchozí velikost papíru. |
| LANG |
Určuje všechna lokalizační nastavení najednou. Může být potlačeno
individuálními nastaveními LC_* nebo přes LC_ALL.
|
Poznámka:
Ačkoli většině programů stačí pouze nastavení LC_ALL, některé mohou pracovat
chybně, pokud je nastaveno pouze LC_ALL a ne LANG. Chcete-li absolutní jistotu,
nastavte obě.
|
Většina uživatelů nastavuje pouze proměnné LANG a LC_CTYPE na uživatelské
úrovni pomocí přidání jejich definice do souborů, které shell zpracovává při
startu:
Výpis kódu 3.1: Nastavení českých lokalizačních nastavení (soubor ~/.bashrc) |
export LANG="cs_CZ"
|
Poznámka:
Přidejte @euro, chce-li používat měnový symbol Eura (€).
|
Nastavení můžete také změnit pro všechny uživatele a programy:
Výpis kódu 3.2: Nastavení výchozích lokalizačních nastavení v /etc/env.d/02locale |
LC_ALL="cs_CZ"
LANG="cs_CZ"
|
Běžný postup je používat nastavení pro jednotlivé uživatele a ponechat výchozí
systémové nastavení nezměněné. V takovém případě platí speciální
lokalizační nastavení, "C", které je z historických důvodů
v angličtině.
Aby pracovaly lokalizace zpráv v programech, které je podporují,
pravděpodobně je budete muset instalovat s nastavenou USE proměnnou
nls (Native language support). Většina programů používajících nls také
potřebuje knihovnu gettext pro zpracovávání zpráv; pokud bude potřeba, Portage
ji samozřejmě nainstaluje.
Máte-li nastaveny správné locale, aktualizujte proměnné prostředí, aby systém
na změny zareagoval:
Výpis kódu 3.3: Aktualizace prostředí |
# env-update && source /etc/profile
$ source ~/.bashrc
|
Nyní musíte stiskem Ctrl-Alt-Backspace restartovat X server, odhlásit se
a znovu se přihlásit.
Poté můžete ověřit, zda skutečně došlo ke změnám:
Výpis kódu 3.4: Ověření změn prostředí |
$ env | grep -i LC_
|
Další lokalizační proměnnou je LINGUAS, která říká, jaké jazykové verze se mají
použít pro programy používající knihovnu gettext a některé další balíčky, jako
například kde-base/kde-i18n a app-office/openoffice. Její obsah
je mezerami oddělený seznam jazykových kódů a doporučené místo, kam ji
umístit, je soubor /etc/make.conf:
Výpis kódu 3.5: Nastavení LINGUAS v make.conf |
# nano -w /etc/make.conf
LINGUAS="cs en de"
|
Vytvoření konkrétních locales
Chcete-li používat místní nastavení (locale), které ve výchozím nastavení není
v systému přítomno, použijte příkaz localedef, například takto:
Výpis kódu 3.6: Vytvoření locale pomocí localedef |
# localedef -c -i en_US -f ISO-8859-15 en_US.ISO-8859-15
|
Až příslušné lokalizační nastavení vytvoříte, můžete exportovat odpovídající
nastavení proměnné LANG.
Výpis kódu 3.7: Export proměnné LANG |
# export LANG="en_US.ISO-8859-15"
|
Opět musíte aktualizovat prostředí:
Výpis kódu 3.8: Aktualizace prostředí |
# env-update && source /etc/profile
|
Nyní pomocí Ctrl-Alt-Backspace restartujte X server, odhlaste se a
přihlaste se jako normální uživatel.
Lokalizačni nastavení glibc
Je pravděpodobné, že ve svém systému budete používat pouze jedno nebo dvě
lokalizační nastavení. Potřebná locales se zadávají do souboru
/etc/locale.gen.
Výpis kódu 3.9: Přidání locales do /etc/locale.gen |
en_GB ISO-8859-1
en_GB.UTF-8 UTF-8
cs_CZ ISO-8859-2
cs_CZ.UTF-8 UTF-8
|
Dalším krokem je spuštění skriptu locale-gen, který se postará o
vygenerování locales podle nastavení z /etc/locale.gen.
Poznámka:
locale-gen je obsažena v balíčku glibc-2.3.6-r4 a novějších.
Pokud používáte starší verzi, může být nyní vhodná doba pro jeho aktualizaci.
|
Ověřit, zda budou zvolená lokalizační nastavení opravdu k dispozici, můžete
nejsnadněji pomocí příkazu locale -a.
4.
Rozvržení klávesnice v konzoli
Rozvržení klávesnice v konzoli je určeno proměnnou KEYMAP
v souboru /etc/conf.d/keymaps. Platné hodnoty mohou být
nalezeny v /usr/share/keymaps/{arch}/.
i386 se dále dělí na pododdíly podle rozvržení
(qwerty/, azerty/, atd.). Některé jazyky mají více
možností, takže možná budete chtít vyzkoušet, které nejvíce vyhovuje Vašim
potřebám.
Výpis kódu 4.1: Nastavení klávesové mapy konzole |
KEYMAP="de"
KEYMAP="de-latin1"
KEYMAP="de-latin1-nodeadkeys"
|
5.
Rozvržení klávesnice pod X serverem
Rozvržení klávesnice pro X server je určeno v souboru
/etc/X11/xorg.conf pomocí volby XkbLayout.
Výpis kódu 5.1: Nastavení klávesové mapy pro X |
Section "InputDevice"
Identifier "Keyboard1"
...
Option "XkbLayout" "cz_qwerty"
Option "XkbModel" "pc105"
# Option "XkbVariant" "nodeadkeys"
...
|
Pokud používáte mezinárodní klávesnici (píšete-li česky, používáte ji), měli
byste nastavit XkbModel na pc102 nebo pc105, což povolí
mapování dalších kláves.
Mrtvé klávesy (deadkeys) jsou takové klávesy, po jejichž stlačení se ihned
neobjeví žádný znak, avšak jejich stisk ovlivní význam další klávesy, která
vytvoří znak typu é, è, á, à atd. Nastavení volby XkbVariant na hodnotu
nodeadkeys způsobí, že se stisky těchto kláves odešlou rovnou.
Pokud chcete přepínat mezi více rozvrženími klávesnice, například českým a
anglickým, potřebujete pouze přidat několik řádek do xorg.conf:
Výpis kódu 5.2: Přepínání mezi dvěma rozvrženími klávesnice |
Section "InputDevice"
Identifier "Keyboard1"
...
Option "XkbLayout" "us,cz_qwerty"
Option "XkbOptions" "grp:alt_shift_toggle,grp_led:scroll"
|
Volba XkbOptions aktivuje přepínání mezi jednotlivými rozvrženími pomocí
stisku Alt-Shift. Navíc bude LED Scroll Lock díky volbě
grp_led:scroll indikovat právě zvolené rozvržení pro lepší přehled.
6.
KDE
Pro KDE je potřeba nainstalovat balíček kde-base/kde-i18n, který se řídí
dříve popsanou proměnnou LINGUAS.
7.
Symbol Euro v konzoli
Aby konzole zobrazovala symbol Euro, musíte nastavit CONSOLEFONT
v souboru /etc/conf.d/consolefont na soubor z adresáře
/usr/share/consolefonts/ (bez přípony .psfu.gz).
lat9w-16 obsahuje symbol Eura.
Výpis kódu 7.1: Nastavení konzolového fontu |
CONSOLEFONT="lat9w-16"
|
Ověřte, zda je CONSOLEFONT ve správném runlevelu:
Výpis kódu 7.2: Ověření runlevelu |
# rc-update show | grep -i consolefont
|
Pokud se pro CONSOLEFONT nezobrazí žádný runlevel, budete jej muset
přidat:
Výpis kódu 7.3: Přidání consolefont do runlevelu boot |
# rc-update add consolefont boot
|
8.
Symbol Eura v X
Většina aplikací
Zprovoznění symbolu Eura pod X je trochu obtížnější. První věc, kterou byste
měli podniknout, je změna definic fixed a variable
v souboru /usr/share/fonts/misc/fonts.alias, aby
končily na iso8859-15 místo iso8859-1.
Výpis kódu 8.1: Změna výchozích fontů pod X |
fixed -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso8859-15
variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-15
|
Některé aplikace používají svůj vlastní font, a proto jim budete muset říct,
aby používaly font se symbolem Eura. Na uživatelské bázi tak můžete učinit
v .Xdefaults (můžete jej i zkopírovat do
/etc/skel/ pro nové uživatele), pro celý systém potom pro
jakoukoli aplikaci se souborem zdrojů (resource file)
v /usr/share/X11/app-defaults/ (například xterm).
V těchto souborech je obecně potřeba změnit již existující řádek, není
třeba přidávat nový. Kupříkladu pro změnu fontu v xtermu:
Výpis kódu 8.2: Nastavení fontu xterm |
$ echo 'XTerm*font: fixed' >> .Xresources
$ xrdb -merge .Xresources
|
Symbol Euro v (X)Emacs
Pro použití symbolu Eura v (X)Emacsu přidejte do .Xdefaults
tento řádek:
Výpis kódu 8.3: Nastavení fontu pro Emacs |
Emacs.default.attributeFont: -*-courier-medium-r-*-*-*-120-*-*-*-*-iso8859-15
|
Pro XEmacs (ne "obyčejný" Emacs) je potřeba o trochu více úsilí. Do
/home/user/.xemacs/init.el přidejte:
Výpis kódu 8.4: Nastavení fontu v XEmacs |
(define-key global-map '(EuroSign) '[€])
|
Poznámka:
Symbol uvnitř hranatých závorek [] je znak pro Euro.
|
OpenOffice.org
SOučasné stabilní verze balíčků app-office/openoffice a
app-office/openoffice-bin umožnují volbu jazyka uživatelského rozhraní
pomocí proměnné LINGUAS. Pro přehled stavu
lokalizace grafického rozhraní, kontroly pravopisu a dalších lokalizací pro váš
jazyk viz lokalizační web
OpenOffice.org (anglicky).
|