Slovak-HOWTO | ||
---|---|---|
Predchádzajúci | Nasledujúci |
Čím ďalej, tým viac programov obsahuje bezproblémovú podporu jazykov iných ako angličtina. Napriek tomu je ešte pár balíkov, ktoré buď používajú vlastné rozloženia kláves, alebo je treba nastaviť nejaké tie fonty či premenné. V tejto kapitole si popíšeme tie aplikácie, v ktorých je pre rozbehanie slovenčiny po naištalovaní nutné urobiť viac ako export LANG=sk.
Ak chcete naozaj plnohodnotne využívať podporu národných nastavení, vždy sa uistite, že program, ktorý používate (alebo celá distribúcia), nie je starší ako 6 - 12 mesiacov. Je totiž možné, že autori pridali túto podporu len v novších verziách.
Niektoré z nasledovných popisov nie sú pôvodné a niektoré nemusia byť ani odskúšané. Preto je pri každom uvedený autor a jeho adresa a prípadný zdroj, z ktorého sa návod dostal do Slovak-HOWTO.
Viď Readline.
Ján 'judas' Tomka, <judas@linux.sk>
Bash máva nepravidelne problém pri zmene premennej LC_CTYPE a zvykne sa stať, že znaky s diakritikou sa nevypisujú napriek správnemu nastaveniu tejto premennej. Zatiaľ sa mi nepodarilo zistiť, kde je chyba, lebo napríklad Vim spustený z takéhoto Bashu funguje správne... Zatiaľ to riešim príkazom
bash$ exec bash |
Aktuálny shell sa nahradí novým, ktorý už premennú LC_CTYPE pochopí správne a je už možné zadávať aj znaky s diakritikou.
Ján Ondrej (SAL), <ondrejj@salstar.shadow.sk>
Ak chcete používať národné prostredie, potrebujete mať nainštalovanú slovenskú klávesnicu, slovenský font a navyše musíte povoliť zobrazovanie znakov s ASCII kódom 128-255 tak, ako sú (as is). To môžete spraviť zmazaním medzery pred voľbou -asis v konfiguračnom súbore joerc. Najčastejšie ho nájdete v adresári /usr/lib/joe/, v Debiane je v adresári /etc/. Ďalšou možnosťou je pridanie parametra -asis pri spúšťaní programu.
Ján 'judas' Tomka, <judas@linux.sk>
V konfigurácii Lynxu sa lokalizácie týkajú hlavne tieto nastavenia:
Display character set (CHARACTER_SET) --- kódovanie znakov na výstupe. Toto hovorí o tom, do akej znakovej sady sa budú prevádzať znaky pred zobrazením na vašej obrazovke. Ak máte štandardne nastavený slovenský font, môžete mať toto vždy nastavené na ISO-8859-2.
Assumed document character set (ASSUME_CHARSET) --- aká znaková sada sa má použiť, ak html dokument neobsahuje informáciu o svojom kódovaní a nastavenie Raw 8-bit je vypnuté. HTTP štandardom je ISO-8859-1 takže tak. Väčšinou majú dokumenty s iným kódovaním ako ISO-8859-1 informáciu o svojej znakovej sade, vtedy sa toto nastavenie neberie do úvahy. Ak chcete, aby sa dokumenty, ktoré nemajú explicitne danú sadu znakov, považovali za súbory s kódovaním Latin 2, nastavte si túto premennú. Možno ju nastaviť len v súbore /etc/lynx.cfg (teda nie pre každého užívateľa zvlášť).
Raw 8-bit --- s týmto sa veľmi trápiť nemusíte, len v prípade, že sa slovenské znaky nezobrazujú správne, sa vždy uistite, že to máte zapnuté (klávesovou skratkou @).
Konfiguračný súbor /etc/lynx.cfg upravte, aby obsahoval minimálne prvý riadok z
CHARACTER_SET:iso-8859-2 ASSUME_CHARSET:iso-8859-2 |
...alebo, pre užívateľský konfiguračný súbor ~/.lynxrc:
character_set=Eastern European (ISO-8859-2) |
Viď RPM4.
Ján 'judas' Tomka, <judas@linux.sk>
Ak inštalujete aplikácie, ktorých súbory s preloženými hláseniami (*.mo) sa po inštalácii nenachádzajú v adresárovej štruktúre pod /usr/share/locale/, odstráňte zo súboru /etc/profile riadok
export NLSPATH=/usr/share/locale/%l/%N |
Vraj je ten riadok nutný pre level1 compliance for LI18NUX2000, man a staršie programy, ale kašľať na štandardy a starý šrot, keď to funguje len bez tej premennej. Samozrejme, ak vám to funguje aj s ňou, zabudnite na mňa.
V prípade, že nemôžete meniť /etc/profile, vložte si do svojho ~/.profile riadok
unset NLSPATH |
Pre správnu funkciu fontov je nutné okrem LC_CTYPE a SYSFONT nastaviť aj premennú SYSFONTACM v súbore /etc/sysconfig/i18n. No ak máte vlastný úžívateľský súbor ~/.i18n, globálny sa nenačíta a premenná SYSFONTACM sa nenastaví. Preto vždy vložte do svojho užívateľského súboru riadok:
SYSFONTACM=iso02 |
Na vine je skript /etc/profile.d/lang.sh, pretože ten pošle na terminál Escape sekvenciu zavedenia užívateľského fontu len v prípade, že je nastavená premenná SYSFONTACM. Tak si ju nastavte, alebo si to nejako opravte!
Ján Ondrej (SAL), <ondrejj@salstar.shadow.sk>
Jeho lokalizácia je jednoduchá, pretože ju priamo podporuje. Klávesou F9 vyvoláte menu Options->Display bits... a zapnite voľby:
(*) Full 8 bits output [x] Full 8 bits input |
Po tomto kroku bude MC vypisovať diakritické znaky správne a bude ich možné aj zadávať z klávesnice. Ak sa pri vstupe do niektorých adresárov bude zobrazovať hláška „Warning: Couldn't change to ...“, tak potrebujete lokalizovať knižnicu readline (iba pre staršie RedHat systémy).
Rámčeky v MC (judas). Ak používate console-tools, pre správnu funkciu rámčekov v Midnight Commander a podobných textových aplikáciách nastavte font s application charset map. U mňa funguje jedine táto kombinácia:
sh$ consolechars --font lat2u-16 --acm iso02 |
Ján 'judas' Tomka, <judas@linux.sk>
Miestnych nastavení sa týkajú v konfiguračnom súbore ~/.muttrc nasledovné premenné:
ascii_chars -- Ak je nastavená, Mutt použije znaky ASCII pri zobrazovaní vláken stromov pripojených súborov, namiesto znakov ASC. To odporúčam, ak máte nastavený starší font bez podpory app-charset-map a namiesto čiar a šípiek sa vám zobrazujú znaky s diakritikou, alebo tieto znaky blikajú ap.
charset -- Znaková sada, ktorú používa váš terminál na zobrazovanie a vkladanie textových dát. Nastaviť na kód znakovej sady fontu, ktorý máte nastavený na konzole alebo v XTerme, atď.
send_charset --
Ján 'judas' Tomka, <judas@linux.sk>
V súbore s globálnymi nastaveniami /etc/inputrc alebo vo svojom užívateľskom súbore ~/.inputrc je pre správnu interpretáciu osembitových znakov nastaviť tieto premenné:
convert-meta --- Ak je nastavená na `on', Readline konvertuje znaky s nastaveným ôsmym bitom na sekvenciu znakov ASCII odstránením ôsmeho bitu a pridaním znaku Esc na začiatok.
input-meta --- Ak je nastavená na `on', Readline umožní osembitový vstup (neodstráni ôsmy bit z prečítaných znakov) bez ohľadu na to, či to terminál podporuje. Meno meta-flag je synonymom pre túto premennú.
output-meta --- Ak je nastavená na `on', Readline bude zobrazovať znaky s nastaveným ôsmym bitom priamo a nie ako escape sekvencie.
Takže, do jedného zo spomínaných súborov vložte takéto nastavenia:
set convert-meta off set input-meta on set output-meta on |
Ján 'judas' Tomka, <judas@linux.sk>
Tento malý skriptík „doinštaluje“ slovenské preklady všetkých aplikácií, ktoré máte nainštalované. Môžu vám chýbať, ak ste pri inštalácii operačného systému nezvolili slovenský jazyk.
export RPM_INSTALL_LANG=sk cd /mnt/cdrom/Mandrake/RPMS/ for i in *.rpm; do j=$(rpm -q --queryformat "%{NAME}" -p $i) if rpm -q $j; then rpm -Uvh --replacepkgs $i fi done |
Už nikdy nezabudnite nastaviť premennú RPM_INSTALL_LANG!
Ján 'judas' Tomka, <judas@linux.sk>
Náprava toho, že Rxvt vypisuje mŕtvy kláves priamo a nečaká na ďalší znak, s ktorým by ho skombinoval, je otázka jedného argumentu pri konfigurovaní:
sh$ ./configure --enable-xim sh$ make sh$ su -c'make install' |
Týmto sa Rxvt skompiluje s podporou pre XIM (X Input Method) protokol. Ten umožňuje alternatívne metódy vstupu (napr. kinput2) a tiež správne nastavenia pre ľudí, čo používajú mŕtve klávesy.
Ján Ondrej (SAL), <ondrejj@salstar.shadow.sk>
Po nastavení lokalizácie dokáže automaticky prekódovať znaky s diakritikou z kódovania 852 na ISO-8859-2. Nastavuje sa to v konfiguračnom súbore /etc/smb.conf pridaním nasledujúcich riadkov do sekcie [global]:
character set = iso8859-2 client code page = 852 |
Predchádzajúci | Domov | Nasledujúci |
Slovenčina a linuxový kernel | Fintičky so slovenčinou |