Slovak-HOWTO

Jn 'judas' Tomka

verzia 4 (Blanka)


16. februr 2002


Tento dokument poskytuje informcie tkajce sa problematiky miestnych
nastaven v prostred opera??nch systmov GNU/Linux s oh??adom na potreby
slovenskho u??vate??a.

-----------------------------------------------------------------------------
Obsah
1. vodn informcie
    1.1. Licencia
    1.2. Aktulna verzia a prispievanie
    1.3. Osoby a obsadenie
   
   
2. Miestne nastavenia
    2.1. Princpy miestnych nastaven
    2.2. Miestne nastavenia pre Slovensko
    2.3. Prklady miestnych nastaven
   
   
3. Nastavenia konzoly
    3.1. Sloven??ina na vstupe textovej konzoly
    3.2. Slovensk klvesnica na textovej konzole
    3.3. Zhrnutie nastaven konzoly
   
   
4. Nastavenia X Window Systemu
    4.1. Slovensk fonty v X Window Systeme
    4.2. Slovensk klvesnica v X Window Systeme
    4.3. Slovensk my?? v X Window Systeme
    4.4. Prklady
   
   
5. Sloven??ina a linuxov kernel
    5.1. Kompilcia kernelu so slovenskou klvesnicou
    5.2. Diakritika v nzvoch sborov na FAT partcich
   
   
6. Posloven??ovanie konkrtnych aplikci
    6.1. Bash
    6.2. Joe
    6.3. Lynx
    6.4. Mandrake 8
    6.5. Midnight Commander
    6.6. Mutt
    6.7. Readline
    6.8. RPM4
    6.9. Rxvt
    6.10. Samba
   
   
7. Finti??ky so sloven??inou
    7.1. Zadvanie slovenskch znakov vo Vim
    7.2. Odstrnenie alebo nahradenie diakritiky v textovch sboroch
   
   

1. vodn informcie

1.1. Licencia

no, m??ete ??ta?? tento dokument, a to aj na komer??n u??ely!

Autori nenes zodpovednos?? za materilnu ??i psychick ujmu spsoben ??
itate??ovi, jeho rodinnm prslu??nkom, domcim a hospodrskym zvieratm,
prpadne po??ta??ovmu zariadeniu.

Toto je ??free?? dokument --- m??ete ho ??ri?? a/alebo modifikova?? v
slade s podmienkami licencie GNU Free Documentation Licence, ktorej znenie
njdete na adrese [http://www.gnu.org/licenses/fdl.html] http://www.gnu.org/
licenses/fdl.html.

Autorom pvodnho Slovak-HOWTO je Jn Ondrej (SAL). Tento dokument z neho
obsahuje: nzov a nvody pre Joe, MC a Sambu. V??etko bolo ukradnut so
shlasom autora.
-----------------------------------------------------------------------------

1.2. Aktulna verzia a prispievanie

Ak njdete v tomto sbore nie??o, ??o je nezl??ite??n s va??im linuxovm
presved??enm, nap??te najskr do diskusie linux, potom sk-i18n, dajte
prspevok na www.linux.sk a poohovrajte ma na #sklug. V prpade, ??e vs to
neprejde, skontrolujte, ??i mte aktulnu verziu a, samozrejme, a?? nakoniec,
dajte mi vedie??. Adresy s:

*Aktulna verzia: [http://slovencina.linux.sk/howto/] http://
    slovencina.linux.sk/howto
   
*Priania, s??a??nosti a ponuky na sob??: [mailto:judas@linux.sk]
    judas@linux.sk
   

Na tto adresu sa tie?? obracajte, ak mte nie??o, ??o by nemalo chba?? v
Slovak-HOWTO.

Nadcia Pom?? a skonaj prispela na dopsanie ??asti o klvesnici v iXoch
sama sebe ??iastkou 500000,-Sk, v televzii Pom?? a skonaj i v rovnomennom
??asopise boli zverejnen inzerty, politick strana PAS nekompromisne trv
na kompromise a v??etci pij minerlku Pom?? a skonaj. Tigre, nosoro??ce a
l??ne konky boli pokrsten, a predsa sa s kapitolou o klvesnici v iXoch ni
?? nedeje. Mimochodom, sme naj??tanej??ie Slovak-HOWTO na svete!

Pri prispievan sa skste riadi?? nasledovnmi pravidlami:

*Pre tch, ktor maj v??ny zujem podie??a?? sa na psan Slovak-HOWTO,
    je mo??n CVS prstup priamo k zdrojovm kdom dokumentu na serveri 
    cvs.linuxdoc.org v adresri /cvsroot/LDP/howto/docbook/Slovak-HOWTO/.
    Bli????ie informcie o zskan CVS konta a webovskom rozhran k CVS
    serveru njdete v LDP Autor Guide.
   
*Opravy robte v??dy vo formte SGML (DTD DocBook, verzia 4.0), ktor je
    primrnym formtom pri tvorbe tohto dokumentu. Je tie?? mo??n posiela??
    ??ist text. Prspevky p??te, pokia?? mo??no, s diakritikou v norme 
    ISO-8859-2.
   
*Ak je to nie??o v????ie, dajte mi najskr vedie??, ??o chystte,
    preto??e je mo??n, ??e u?? na tom niekto mak a teda bu?? na to
    zabudnete, alebo to sksite dorobi?? s danou osobou. (Vzh??adom na to,
    ??e zatia?? sa do tohto dokumentu dostalo asi 20 riadkov cudzieho textu,
    zd sa mi predchdzajca veta maximlne smie??na. Ha-ha, zasmial som
    sa...)
   
*Va??e meno a adresa bud automaticky zverejnen spolu s va??im
    prspevkom. Ak si to ne??elte, muste o to vslovne po??iada??. Takisto,
    autor prspevku u?? jeho zaslanm implicitne shlas s aplikciou
    licencie tohto dokumentu na ??as??, ktorej je autorom.
   
*V Czech-HOWTO sa hovor: ??Kdy?? u?? n??kdo podobn dokument ??te, d??l
    to z nutnosti a ne pro sv pobaven.?? Musme v??ak zobra?? do vahy, ??e
    v ??echch je vy????ia ??ivotn rove?? a oni a?? to??ko srandy
    nepotrebuj...
   

-----------------------------------------------------------------------------
1.3. Osoby a obsadenie

Men autorov nvodov na lokalizciu konkrtnych aplikci sa nachdzaj
priamo v kapitole Posloven??ovanie konkrtnych aplikci, prpadne Finti??ky
so sloven??inou.

*Jn 'judas' Tomka -- Zodpovedn vedci.
   
*??ubomr 'salo' Sedl??ik -- ksh/csh/tcsh, grammar bugfixes.
   

-----------------------------------------------------------------------------
2. Miestne nastavenia

2.1. Princpy miestnych nastaven

Podpora miestnych nastaven je dnes mimoriadne dle??itm faktorom, ktor
charakterizuje jednotliv opera??n systmy. ??asy, ke?? boli ??udia
??tastn, ??e to nie??o p??e, s nenvratne pre?? a pou??vatelia vy??aduj
podporu svojich miestnych nastaven. V GNU systmoch je tto podpora
implementovan priamo do ??tandardnej kni??nice jazyka C -- GNU libc. Tto
podpora je navrhnut tak, aby zoh??ad??ovala v??etky po??iadavky kladen na
nastavenia pre akko??vek krajinu a akko??vek jazyk.
-----------------------------------------------------------------------------

2.1.1. Ciele a prostriedky

Rzne krajiny a kultry maj odli??n pravidl komunikcie. Tieto pravidl
m??u by?? malho rozsahu, napr. formt dtumu a ??asu, a?? po ve??mi
koplexn ako je jazyk, ktorm hovoria.

Internacionalizcia softvru znamen programova?? ho tak, aby bol schopn
pracova?? s pou??ivate??ovmi miestnymi nastaveniami. V ISO C pracuje
internacionalizcia v zmysle locales. Ka??d locale (miestne nastavenia)
??pecifikuje skupinu pravidiel, jedno pravidlo pre ka??d u??el. U??vate??
si zvol skupinu pravidiel ??pecifikovanm locale (pomocou systmovch
premennch).

V??etky programy dedia nastaven locale v rmci ich prostredia. Pod
podmienkou, ??e programy s napsan tak, ??e akceptuj nastaven locales,
m??u sa riadi?? pravidlami, ktor uprednost??uje pou??vate??.
-----------------------------------------------------------------------------

2.1.2. Kategrie a ich funkcie

Tto ??as?? popisuje jednotliv premenn, ktor ovplyv??uj miestne
nastavenia a ktormi sa riadia aj funkcie kni??nice GNU libc.

Nastavenie premennej prostredia sa rob pomocou prkazu shellu
+---------------------------------------------------------------------------+
|bash$ export LC_PREMENNA=sk                                                |
|                                                                           |
|tcsh$ setenv LC_PREMENNA sk                                                |
|                                                                           |
+---------------------------------------------------------------------------+

LC_PREMENNA je jedna z nasledujcich:

*LC_COLLATE --- Triedenie re??azcov. Nastavenm tejto premennej mo??no
    printi?? aplikcie, napr. sort, ls a in, aby pri porovnvan re??azcov
    brali do vahy miestne rozlo??enie jednotlivch psmen v abecede. Sloven
    ??ina m naprklad hne?? nieko??ko znakov, ktor by pri trieden pod??a
    ??selnej hodnoty znaku spsobovali problmy. Slovensk nastavenia
    triedenia povedia funkciam strcoll a strxfrm, ??e naprklad ch je jedno
    psmeno a nasleduje hne?? za h a nie za c, ??e ??irok  nasleduje za
    dlhm  a to zase za oby??ajnm a. Skste si to na prkaze sort. Zadajte
    psmen cc ch hh, potom zme??te LC_COLLATE prkazom
    +---------------------------------------------------------------+
    |bash$ export LC_COLLATE=sk                                     |
    |                                                               |
    |tcsh$ setenv LC_COLLATE sk                                     |
    |                                                               |
    +---------------------------------------------------------------+
   
    Skste to so sort znovu a porovnajte vsledok...
   
*LC_CTYPE --- Klasifikcia a prevod znakov, multibyte. Sprvne nastavenie
    tejto premennej je nutn pre korektn rozli??ovanie znakov abecedy
    jednotlivch jazykov, ur??enie ??slic, tzv. bielych znakov, prevod
    malch psmen na ve??k, at??. Najvhodnej??ie je tto premenn
    nenastavova?? a tm umo??ni??, aby bola jej hodnota prebrat od
    premennch LC_ALL alebo LANG (vi?? ??alej). Ak ale nechcete pou??va??
    slovensk nastavenia, len ma?? sprvne zobrazen slovensk fonty a funk??
    n slovensk klvesnicu na konzole aj pod iXami, nastavte iba tto
    premenn.
   
    Varovanie V??dy si bu??te stopercentne ist, ??e mte tto       
              premenn nastaven (bu?? cez LC_ALL, LANG alebo        
              priamo), lebo inak nem zmysel ??ta?? ??alej! Ono ??  
              klasifikcia a prevod znakov?? neznie nejako lkavo,   
              ale vedzte, ??e je to sakramentsky dle??it pre ??ivot
              slovenskch psmeniek vo va??om Linuxe!                
   
*LC_MONETARY, LC_NUMERIC --- Formt pe??a??nch a ??selnch hodnt.
    Umo????uje meni?? skupinu nastaven, ktor sa pou??ij pri formtovan
    pe??a??nch hodnt alebo v??etkch ostatnch ??selnch hodnt. S to
    desatinn ??iarka, odde??ova?? tiscov, zoskupovanie ??slic, znamienka
    pre kladn a zaporn hodnoty, at??.
   
*LC_TIME --- Formtovanie dtumu a ??asu. Nastavenia odde??ova??ov medzi
    hodinami, mintami a sekundami, nzvy dn, poradie rok, mesiac a de?? v
    dtume, ...
   
*LC_MESSAGES --- Vber jazyka, pou??itho u??vate??skm rozhranm na
    preklad hl??ok programov. Toto je presne t premenn, ktor printi
    aplikcie hovori?? po slovensky. Vi?? ??al??ie kapitoly.
   

S prekladom hlsen programov, hlavne s umiestnenm sborov s prelo??enmi
re??azcami, svis premenn NLSPATH. Mala by obsahova?? dvojbodkami oddelen
zoznam adresrov, v ktorch sa bud h??ada?? .mo sbory pre miestne
nastavenia dan premennou LC_MESSAGES. Premenn NLSPATH je v??ak potrebn
nastavova?? len vo vnimo??nch prpadoch, preto??e aplikcie h??adaj
preklady svojich hlsen v ??tandardnch adresroch pre tieto sbory.

Okrem tchto premennch bolo implementovanch nieko??ko ??al??ch, ktor
zatia?? nie s zdokumentovan (The GNU C Library Reference Manual). Ich
vznam je zrejm z nzvu, tak??e uvediem aj svoju dedukciu.

*LC_PAPER --- Formt papiera. V na??ich zemepisnch ??rkach sa naprklad
    pou??va formt A4, v Amerike je to Letter, at??. Pozor, tto premenn
    neobsahuje priamo nzov formtu, ale (tak, ako v??etky LC_ premenn),
    skratku miestneho nastavenia, teda u ns to bude sk. Ak by sme chceli
    pou??va?? formt Letter, museli by sme tto premenn nastavi?? na kd
    miestneho nastavenia niektorej z krajn, ktor pou??va takto formt,
    naprklad us. V tomto prpade je nutn nain??talova?? balk s miestnymi
    nastaveniami pre tto krajinu (locales-us).
   
*LC_NAME --- Formt mena a priezviska. U ns m ka??d dve men, p??u sa
    v porad meno, priezvisko. V Rusku maj zase tri men v porad meno,
    otcovo-meno, priezvisko. V Ma??arsku maj dve men tak ako u ns, ale
    p??u sa v opa??nom porad. O tom je tto premenn. Asi...
   
*LC_ADDRESS --- Spsob zpisu adresy. Poradie ulice a popisnho ??sla
    domu, ZIP kd, PS?? apod.
   
*LC_TELEPHONE --- Formt telefnnych a faxovch ??sel. Ur??uje
    zoskupovanie ??slic, ich oddelovanie, po??et ??sel predvo??by, ...
   
*LC_MEASUREMENT --- Miery. Jednotky hmotnosti, objemu, teploty a d????ky,
    pou??van v tej ktorej krajine. Program napsan v USA bude
    pravdepodobne po??ta?? s galnmi vody, ale ak je sprvne napsan, s
    premennou LC_MEASUREMENT nastavenou na ??sk?? bude zobrazova?? litre v
    sprvnom pomere. To ist plat naprklad pre prevod teploty vo
    Fahrenheitovej stupnici na stupne Celsia.
   
*LC_IDENTIFICATION --- Az apd, tak toto neviem. Rodn ??slo? ??slo
    socilneho poistenia? ??slo topnok?
   

-----------------------------------------------------------------------------
2.1.3. ??al??ie premenn

*LC_ALL --- Ak je tto premenn nastaven, pou??ije sa jej hodnota pre
    v??etky vy????ie spomenut skupiny locales, bez oh??adu na hodnotu
    prslu??nch premennch.
   
*LANG --- Hodnota tejto premennej sa pou??ije pre tie skupiny locales,
    ktor nemaj prslu??n premenn nastaven.
   
*LANGUAGE --- Alternatvne miestne nastavenia. Tto premenn m??e
    obsahova?? usporiadan zoznam kdov miestnych nastaven oddelench
    dvojbodkami. Sbory s prekladmi hl??ok programov sa bud h??ada?? v
    porad, v akom s ur??en v tomto zozname. Ak sa nepodar njs?? sbor s
    prelo??enmi hl??kami programu v jednom jazyku, pou??ije sa sbor pre
    nasledujci jazyk v zozname LANGUAGE. Navy??e, ak sa sbor pre prv jazyk
    aj njde, ale niektor re??azec z neho nie je prelo??en, nepou??ije sa
    pvodn (anglick), ale najskr sa poksi njs?? preklad danho re??azca
    v sbore pre ??al?? jazyk v zozname LANGUAGE. To je vhodn pre ??ud,
    ktor okrem svojho jazyka ovldaj nejak in lep??ie ako angli??tinu, v
    ktorej s zvy??ajne programy originlne napsan. Naprklad Slovk by
    mohol ma?? nastaven LANGUAGE="sk:cz" a Szolvk z Komrom zase LANGUAGE=
    "hu:sk".
   
    Vstraha Premenn LANGUAGE ovplyv??uje len premenn LC_MESSAGES! 
             Pre sprvnu funkciu je nutn nastavi?? aj ostatn       
             premenn (minimlne LC_CTYPE).                          
   
*LINGUAS --- Tto premenn nem ??pecilny vznam z h??adiska GNU libc,
    ale zvykne sa pou??va?? pri in??talcii programov (zo zdrojkov).
    Medzerami oddelen zoznam kdov miestnych nastaven ur??uje jazyky, pre
    ktor si u??vate?? ??el in??talova?? preklady re??azcov aplikcie.
    Prklad:
    +---------------------------------------------------------------+
    |bash$ export LINGUAS="sk cz"                                   |
    |bash$ ./configure                                              |
    |bash$ make install                                             |
    |                                                               |
    +---------------------------------------------------------------+
   
    Tieto prkazy skompiluj a nain??taluj aplikciu s podporou sloven??iny
    a ??e??tiny. In??tala??n skripty obvykle tie?? kontroluj obsah
    premennch LANG a LC_ALL, tieto ale m??u obsahova?? len jeden kd
    miestnych nastaven.
   
*RPM_INSTALL_LANG --- ??astej??ie ako zo zdrojovho kdu sa aplikcie
    in??taluj z rznych balkov (rpm, deb, ...). Kvli ??etreniu miestom na
    disku (a logike -- mlokto ovlda tridsa?? re??) je v RPM4 mo??n ur??
    i?? jazyk, ktorho prelo??en hl??ky sa bud in??talova??. Preto odpor
    ??am do sboru .bash_profile (.login) u??vate??a, ktor in??taluje
    balky (root), vlo??i?? nasledovn riadok:
    +---------------------------------------------------------------+
    |bash$ export RPM_INSTALL_LANG=sk                               |
    |                                                               |
    |tcsh$ setenv RPM_INSTALL_LANG "sk"                             |
    |                                                               |
    +---------------------------------------------------------------+
   
    Ak sa vm nebodaj stane tak vec, ??e nain??talujete cel opera??n
    systm a a?? potom sa dozviete o tejto premennej (tak, ako sa to stalo aj
    mne), skste skript uveden v ??asti RPM4.
   

-----------------------------------------------------------------------------
2.1.4. Priorita premennch

Miestne nastavenia sa ur??uj zo spomenutch premennch, pri??om tieto sa
vyhodnocuj v tomto porad:

LANGUAGE --- ovplyv??uje len LC_MESSAGES
LC_ALL                                  
LC_*                                    
LANG                                    

To znamen asi to??ko, ??e ke?? raz nastavte LC_ALL, jednotliv premenn LC_
* sa u?? neber do vahy. Na druhej strane, ak mte naprklad nastaven len
niektor z LC_*, ostatn sa nastavia na hodnotu premennej LANG.
-----------------------------------------------------------------------------

2.1.5. Kdy miestnych nastaven

Premenn, ktor ovplyv??uj miestne nastavenia, sa nap????aj kdmi miestnych
nastaven. Kdy miestnych nastaven s re??azce, ktorch formt sa riadi
nieko??kmi pravidlami. V??eobecn tvar je:
jazyk[_zemie[.kdovanie]][@modifiktor]                                     
                                                                             

jazyk je napr. sk pre sloven??inu, cs pre ??e??tinu, hu pre ma??ar??inu,
zemie je SK pre Slovensko, CZ pre ??esk republiku, HU pre Ma??arsko,
kdovanie je ISO-8859-2 pre v??etky stredoeurpske jazyky (je mo??ne pou??i??
nieko??ko formtov na zadanie kdovania) a modifiktor slu??i na povolenie
alebo zakzanie niektorch funkci. Tie s dan v definciach miestnych
nastaven. Naprklad, pre Ve??k Britniu je modifiktorom re??azec euro a
pri jeho pou??it sa ako pe??a??n mena bude pou??va?? euro namiesto libry.
To znamen, ??e sa mus pou??i?? kdovanie iso-8859-15, ktor definuje znaky
euro a cent.

Prklady kdov miestnych nastaven (ka??d z tchto re??azcov je mo??n
priradi?? premennm miestnych nastaven, ale naj??astej??ie sa pou??vaj len
dvojpsmenkov skratky v poslednom st??pci):


Tabu??ka 1. Prklady kdov miestnych nastaven
+-----------------+---------+-------+--+
|sk_SK.ISO-8859-2 |sk_SK    |      |sk|
+-----------------+---------+-------+--+
|cs_CZ.ISO-8859-2 |cs_CZ@-ch|cs@-ch |cs|
+-----------------+---------+-------+--+
|en_GB.iso8859    |en_GB    |en@euro|en|
+-----------------+---------+-------+--+
|ja_JP.ujis       |ja_JP.EUC|ja_JP  |ja|
+-----------------+---------+-------+--+

Nemali by sme zabudn?? na dve ??tandardn locales, ktor sa pou??ij, ak nie
s systmov premenn nastaven a programy ich pou??vaj do doby, km sa
inicializuje lokalizcia. Tvrdm, ??e sa pou??ij obe, preto??e momentlne s
toto??n, ale v budcnosti sa m??u v tejto oblasti ??tandardy ISO C a POSIX
odli??ova?? a potom to bude zle??a?? na konfigurcii systmu.

C --- nastavenia pod??a ??tandardu ISO C.                                    
POSIX --- nastavenia pod??a ??tandardu POSIX. V s??asnosti je to alias pre  
nastavenia C.                                                                

-----------------------------------------------------------------------------
2.2. Miestne nastavenia pre Slovensko

V prvom rade treba nain??talova?? balk s podporou miestnych nastaven, ktor
m nzov locales a tie?? balk s podporou priamo pre Slovensko --- locales-sk
. Ak mte zujem pou??va?? aj podporu pre nejak in jazyk (na na??om zem
je aktulna najm ??e??tina a ma??ar??ina), muste tie?? nain??talova??
balky pre tieto jazyky.

V druhom rade si muste nain??talova?? balky s podporou miestnych nastaven
a priamo sloven??iny (s to locales a locales-sk).

V ??al??om kroku si nezabudnite nain??talova?? balky locales a locales-sk.
Takisto, pre ka??d jazyk, ktor sa chystte pou??va??, si nain??talujte
balk s podporou miestnych nastaven.

V prpade problmov s miestnymi nastaveniami sa dr??te predchdzajcich troch
krokov.
-----------------------------------------------------------------------------

2.2.1. Sbory s miestnymi nastaveniami

Prejdime sa teraz trochu po na??ich adresroch. Prv nav??tvime /usr/share/
locale/sk. Na prv poh??ad vidno, ??e adresr a sbory v tomto adresri maj
men toto??n s premennmi, pomocou ktorch sa nastavuj jednotliv kategrie
miestnych nastaven. Je to preto, lebo prve z tchto sborov sa na??taj
nastavenia, ke?? je dan premenn nastaven na hodnotu sk. Okrem nich tu
m??e by?? e??te sbor charset, ktor obsahuje len jeden riadok s re??azcom
iso-8859-2. Ten hovor, ak kdovanie znakov sa m pou??i?? pre dan miestne
nastavenia.

V??etky sbory v tomto adresri s binrne dta a adresr LC_MESSAGES
obsahuje sbory, ktorch men s toto??n s nzvami niektorch balkov
nain??talovanch na va??om systme, s prponou mo. S to preklady re??azcov z
jednotlivch aplikci. O nich si povieme neskr. Teraz by sme mohli zisti??,
??o vlastne obsahuj sbory LC_*.

Presu??me sa do adresra /usr/share/i18n/. Tu, v textovom sbore sk_SK v
podadresri locales/ sa kone??ne nachdzaj slovensk miestne nastavenia v ??
itate??nej (a editovate??nej) forme. Sbory v tomto adresri maj presne dan
??truktru, ktor je popsan v manulovej strnke locale(5). Pre be??nho
pou??vate??a nem zmysel meni?? nastavenia v tomto sbore, ke????e ide o
??tandardn nastavenia, ktor sa pou??vaj na celom Slovensku. Ale, proti
Gustovi ??iadna putika! Ak sa teda rozhodnete zmeni?? nie??o v tomto sbore,
muste aktualizova?? sbory v prvom spomnanom adresri /usr/share/locales/sk
/ prkazom, ktor daje v sbore sk_SK skompiluje a ulo?? do sborov
LC_COLLATE, LC_CTYPE, ...
sh$ localedef -i sk_SK -f ISO-8859-2 sk_SK                                   
                                                                             

V podadresri /usr/share/i18n/charmaps/ sa nachdzaj sbory s popismi
jednotlivch kdovani znakov. Pre Slovensko je aktulny ISO-8859-2 (??o je aj
obsah spomnaneho sboru charset).

V adresri /usr/share/locale/ sa nachdza sbor locale.alias, ktor definuje
tzv. aliasy pre kdy miestnych nastaven. Pre sprvnu funkciu slovenskch
miestnych nastaven by mal obsahova?? tieto dva riadky:
sk              sk_SK.ISO-8859-2                                             
slovak          sk_SK.ISO-8859-2                                             
                                                                             

To zabezpe??, ??e aj ke?? nezadte kdovanie znakov, bude pou??it
iso-8859-2. Druh riadok m na svedom to, ??e namiesto sk mo??no zada??
slovak.

Varovanie Ale na aliasy typu slovak si dvajte bacha! Niektor aplikcie,    
          ktor v svislosti s miestnymi nastaveniami nevyu??vaj slu??by   
          libc, toti?? na aliasy ka???? a zaujmaj ich len prv dva znaky  
          nastavench premennch. A tak sa zo slovak stane sl, ??o je        
          Slovinsko. Pozitvne je, ??e pre sloven??inu m??ete nastavi??     
          premenn naprklad na hodnotu skaderukaskadenoha.                  
-----------------------------------------------------------------------------

2.2.2. Konfigurcia miestnych nastaven

Nastavenia internacionalizcie sa (v RedHat a Mandrake) nachdzaj v sbore /
etc/sysconfig/i18n. Je to ve??mi u??ito??n sbor, ktor si rchlo ob??bite.
Mo??no v ??om nastavi?? v??etko, ??o sa kedy tkalo internacionalizcie,
nrodnch fontov a rozlo??en klves. Tento sbor v??ak len definuje
systmov premenn a zvykne sa vklada?? (source /etc/sysconfig/i18n) do
inicializa??nch skriptov. Exportovanie premennch (odovzdanie ostatnm
aplikcim) m na starosti skript /etc/profile.d/lang.sh (bash) alebo /etc/
profile.d/lang.csh (tcsh). Tento sa vykon pri ka??dom ??tarte shellu,
typicky je volan z /etc/profile (bash) alebo /etc/csh.cshrc (tcsh).

Sbor /etc/sysconfig/i18n definuje nastavenia pre cel systm. Tieto sa
pou??ij, ak sa nenjde sbor s u??vate??ovmi nastaveniami. Ka??d u??vate
?? si m??e ur??i?? svoje vlastn nastavenia v sbore .i18n v jeho domovskom
adresri. Nastavenia sa v??dy ??taj len z jednho z tchto sborov, teda ak
m u??vate?? svoj vlastn sbor ??/.i18n, nastavenia zo sboru /etc/
sysconfig/i18n sa ignoruj.

U??vate?? si m??e zmeni?? nastavenia aj ru??ne, kedyko??vek sa mu zachce,
nastavenm premennch prostredia LC_MESSAGES, LANG, at??.

Vypn?? nejak nastavenie je mo??n prkazom
+---------------------------------------------------------------------------+
|sh$ unset LC_MESSAGES LANG                                                 |
|                                                                           |
+---------------------------------------------------------------------------+

Tm sa zru??ia nastavenia danch premennch (a pou??ije sa ??tandardn locale
C alebo POSIX).

Ak mte naprklad nastaven premenn LC_ALL=sk a LC_MESSAGES=cz, tak po
prkaze unset LC_ALL nebudete ma?? hlsenia programov v angli??tine, ale ??
e??tine. Preto, ak chcete vypn?? nejak nastavenia, v??dy muste prkazom
unset zru??i?? nastavenia v??etkch premennch, ktor m??u ovplyv??ova??
dan miestne nastavenia.

Poznmka export/setenv                                                       
        Neodpustm si mal poznmku k prkazu export. Je to vstavan funkcia
         v??etkch shellov kompatibilnch s klasickm sh (teda aj bash). Pre 
         shelly typu tcsh je ekvivalentom prkaz setenv.                     
                                                                             
         Je dle??it uvedomi?? si, ??o presne tento prkaz rob s           
         premennmi. V dokumentcii k bashu sa hovor, ??e export ozna??    
         premenn, aby bola odovzdan detskm (child) procesom v rmci       
         prostredia (environment). To znamen asi to??ko, ??e ke?? spustte  
         napr. iXy z materskho procesu bash, ktor pri ??tarte exportoval   
         premenn LANG=sk, v??etky aplikcie v prostred X Window System bud
         dedi?? toto nastavenie a teda (ak to sami podporuj) bud fungova?? 
         po slovensky. Ak budete chcie?? spusti?? aplikciu bez slovenskch  
         nastaven, muste v xterme zada?? prkaz unset LANG (unsetenv LANG  
         pre tcsh), ??m pre v??etky detsk procesy xtermu (presnej??ie      
         shellu, ktor je v ??om spusten), zru??te nastavenie premennej    
         LANG. Potom aplikcie spusten priamo z tohto xtermu bud fungova?? 
         bez podpory sloven??iny. Trochu sa s tm pohrajte.                  
-----------------------------------------------------------------------------

2.2.3. Nastavenie ??asovej zny

S miestnymi nastaveniami zko svis aj nastavenie ??asovej zny. Vedel by
som o tom rozprva?? cel hodiny, ale ono by to muselo by?? zlo??itej??ie ako
len nastavenie jednej premennej... A to takto:
+---------------------------------------------------------------------------+
|bash$ export TZ="Europe/Bratislava"                                        |
|                                                                           |
|tcsh$ setenv TZ "Europe/Bratislava"                                        |
|                                                                           |
+---------------------------------------------------------------------------+

Toto nastavenie ovplyv??uje len ??asov posun oproti hardverovm hodinm.
(Mimochodom, odpor??am hardverov hodiny nastaven na greenwichsk svetov
??as, ??m tie?? odpadaj problmy s prechodom medzi letnm a zimnm ??asom
at??. ale o tom s popsan in sbory.) Toto cel je dos?? dobr vec, hlavne
ak mate prstup k po??ta??u v inej ??asovej zne, ale chcete pracova?? s ??
asom v stredoeurpskej zne. Do svojho sboru .bash_profile (.login pre tcsh)
vlo??te vy????ie uveden riadok.
-----------------------------------------------------------------------------

2.3. Prklady miestnych nastaven

*U??vate?? je sce zo strednho Slovenska, ale u?? ke?? s nm bola jeho
    mama tehotn, p????ala mu do brucha kurzy angli??tiny. Nem teda zmysel
    pou??va?? slovensk nastavenia, a?? na krajn prpady, napr. slovensk
    fonty v Gimpe. Darujte mu sbor .i18n s nasledovnm obsahom (aj na takto
    mal on potrebuje locales-sk):
    +---------------------------------------------------------------+
    |LC_CTYPE=sk                                                    |
    |                                                               |
    +---------------------------------------------------------------+
   
*U??vate?? je normlny, m rd svoj materinsk jazyk, ale netrpi ho, ke
    ?? m polovicu aplikci po slovensky a polovicu po anglicky. Po ??esky
    vie. Toto ho pote?? (nezabudnite mu potajomky nain??talova?? aj 
    locales-cs):
    +---------------------------------------------------------------+
    |LANGUAGE=sk:cs                                                 |
    |LANG=sk                                                        |
    |                                                               |
    +---------------------------------------------------------------+
   
*U??vate?? je z blzkeho juhu, jeho ob??ben pleso je Balaton, v??etky
    hl??ky chce po ma??arsky, ak sa inak ned, pochop aj sloven??inu.
    Nesmieme zabudn?? na jeho miernu schizofreniu, pri??om jedno jeho ja
    potrebuje slovensk triedenie re??azcov a druh nevie ??i?? bez
    formtovania dtumu a ??asu v ??e??tine. Nikdy sa nesmie zabudn?? na
    in??talciu prekladov hl??ok pre ma??ar??inu, ??e??tinu a sloven??inu z
    balkov, ktor podporuj premenn LINGUAS. Treba ho tie?? presved??i??,
    ??e in??talcia locales-{sk,hu,cs} nepredstavuje bezpe??nostn riziko:
    +---------------------------------------------------------------+
    |LANGUAGE=hu:sk:cs                                              |
    |LC_COLLATE=sk                                                  |
    |LC_TIME=cs                                                     |
    |LANG=hu                                                        |
    |LINGUAS="hu cs sk"                                             |
    |                                                               |
    +---------------------------------------------------------------+
   

-----------------------------------------------------------------------------
3. Nastavenia konzoly

Tto kapitola by mala ??tavou, pou??nou a zrove?? zbavnou formou
pojednva?? o veciach medzi prstom a okom. Zkladnou otzkou nech nm je ??
Zmysel ??ivota, vesmru a vbec.??
-----------------------------------------------------------------------------

3.1. Sloven??ina na vstupe textovej konzoly

3.1.1. Fonty

Ke?? zobudte o polnoci hocikoho, kto vo svojom ??ivote videl po??ta?? a
optate sa ho, ako rozbeha?? slovensk znaky, ur??ite spomenie nie??o ako
fonty. Na zobrazovanie znakov na obrazovku -- ??i u?? v textovom alebo
grafickom re??ime -- sl??ia skuto??ne fonty. Fonty pre konzolu a programy ur
??en na manipulciu s nimi sa nachdzaj v balku kbd. Po jeho
nain??talovan s sbory s fontami umiestnen v adresri /usr/lib/kbd/
consolefonts/.

Pre ns s dle??it najm sbory, ktor maj v mene iso02, lat2, latin2
alebo ??slo 852. To nazna??uje, ??e ide o fonty s podporou ISO-8859-2 (
latin2), prpadne DOS codepage 852, ??o s ??tandardy aj pre slovensk
diakritiku.

Pozor, pvodn balk sa vol kbd, ale existuje jeho roz??ren verzia, ktor
sa objavuje v distribcich -- console-tools. Rozdiely medzi nimi s
minimlne, pre kbd budeme pou??va?? prkaz setfont, pre console-tools zase 
consolechars. Taktie??, nzvy dodvanch fontov sa trochu odli??uj, tak??e
budem uvdza?? ekvivalenty pre oba balky.
-----------------------------------------------------------------------------

3.1.2. Ako fonty funguj

Existuje nieko??ko sborovch formtov na ukladanie fontov, princp je v??ak
rovnak -- sbor obsahuje 256 obrzkov (glyphs), z ktorch v??etky maj
rovnak rozmer (napr. 8x16 bodov -- ve??kos?? fontu) a ka??d zobrazuje jeden
znak.

Aby nm tch 256 obrzkov bolo na nie??o dobrch, je treba font zo sboru
zavies?? do znakovho genertora videokarty. Na to sl??i jeden z prkazov

kbd:
    setfont meno-fontu
   
console-tools:
    consolechars -f meno-fontu
   

meno-fontu m??e by?? absoltna alebo relatvna cesta k sboru s fontom,
alebo meno sboru, pokia?? sa nachdza v adresri /usr/lib/kbd/consolefonts/,
??i u?? s prponou, alebo bez.

Pre ??ah??ie pochopenie tch obrzkov, skste nahradi?? meno-fontu re??azcom
t850 a sledujte vsledok na v??etkch virtulnych konzolch.

Nasp?? k ??tandardnmu fontu sa v??dy dostanete jednm z prkazov

kbd:
    +---------------------------------------------------------------+
    |sh$ setfont                                                    |
    |                                                               |
    +---------------------------------------------------------------+
   
console-tools:
    +---------------------------------------------------------------+
    |sh$ consolechars -d                                            |
    |                                                               |
    +---------------------------------------------------------------+
   

??o sa presne deje? Program setfont/consolechars zavedie v??etkch 256
obrzkov do znakovho genertora EGA/VGA karty. Od tohto momentu sa na
v??etkch konzolch bude znak s ASCII kdom napr. 65 vykreslova?? ako
??esdesiaty piaty obrzok z na??eho sboru s fontom. E??te raz pripomnam a
dvakrt pod??iarkujem, ??e font je v??dy rovnak pre v??etky virtulne
konzoly, na ktorch zobrazuje znaky ten ist znakov genertor EGA/VGA karty.

Dle??it je uvedomi?? si, ??e interne ide naozaj len o obrzky a tvar
niektorho znaku vo fonte nem ni?? spolo??nho s jeho ASCII kdom. Ak by ste
si sami vytvorili nejak font (v dokumentcii ku kbd/console-tools mte
informcie o v??etkch formtoch), v ktorom by mal ten ??esdesiaty piaty
obrzok tvar psmena z, po jeho natiahnut sa vm bude pri zadan Alt-6-5, ??
o je ASCII kd psmena A, zobrazova?? znak z. Ale ak tento znak ulo??te do
sboru, v tomto sa bude nachdza?? bajt s hodnotou 65, teda psmeno A.
-----------------------------------------------------------------------------

3.1.3. Fonty ISO-8859-2

Toto vyu??va ??tandard ISO-8859-2 (a in) - spolo??n znaky s ASCII vykresl
rovnako a znaky ??pecifick pre t ktor abecedu ??namapuje?? na menej
pou??van znaky ASCII tabu??ky. Kam presne ktor norma umiest??uje znaky s
diakritikou, ns zaujma?? nemus (pokia?? nevytvrame vlastn fonty), hlavn
je, ??e napr. anglick text je nezmenen (angli??tina m v??etky znaky spolo
??n so sloven??inou) a slovensk text u?? viac neobsahuje hlpe znaky, ktor
so sloven??inou nemaj ni?? spolo??n.

Slovensk (ISO-8859-2) fonty, ktor s s??as??ou balkov kbd a console-tools
:

kbd:
    lat2-{08,10,12,14,16}, lat2a-16, iso02.{08,14,16}
   
console-tools:
    lat2-{08,10,12,14,16}, lat2u-16, iso02.f{08,14,16}
   

Na zavedenie fontu pou??ite prkaz

kbd:
    +---------------------------------------------------------------+
    |sh$ setfont meno-zo-zoznamu                                    |
    |                                                               |
    +---------------------------------------------------------------+
   
console-tools:
    +---------------------------------------------------------------+
    |sh$ consolechars -f meno-zo-zoznamu                            |
    |                                                               |
    +---------------------------------------------------------------+
   

Odpor??am pou??va?? lat2a-16, resp. lat2u-16. Ostatn fonty maj bezchybn
zobrazovanie slovenskch znakov, problm v??ak nastva pri aplikcich, ktor
vyu??vaj znaky na kreslenie rm??ekov (napr. mc).

??o sa tka fontov iso02.* z balka kbd, treba pri nich pou??i?? argument
prkazu setfont -m latin2u.trans. Tak??e cel prkaz na zavedenie niektorho
z tchto fontov je:

kbd:
    +---------------------------------------------------------------+
    |sh$ setfont iso02.16 -m latin2u.trans                          |
    |                                                               |
    +---------------------------------------------------------------+
   
console-tools:
    +---------------------------------------------------------------+
    |sh$ consoletrans -f lat2u-16 -m iso02                          |
    |                                                               |
    +---------------------------------------------------------------+
   

V sbore latin2u.trans (iso02.acm) sa nachdza tzv. Aplication-Charset Map (
ACM), aksi prevodn tabu??ka, ktor obsahuje riadok pre ka??d znak fontu a
jeho podobu v kdovan UTF-8.
-----------------------------------------------------------------------------

3.1.4. Automatick zavdzanie fontov

Ak ste si na??li svoj font, ktor chcete pou??va?? a ma?? ho automaticky
zaveden v??dy pri ??tarte, nie je ni?? ??ah??ie. Inicializa??n skript
rc.sysinit rob asi toto: skontroluje, ??i existuje sbor /etc/sysconfig/i18n
a program (skript) /sbin/setsysfont. Ak no, spust setsysfont. Ten na??ta /
etc/sysinfo/i18n a pod??a premennch definovanch v tomto sbore prkazom 
consolechars alebo setfont zavedie font.

Tak??e sta?? nastavi?? sprvne premenn v sbore /etc/sysconfig/i18n a
skript /sbin/setsysfont urob v??etko za ns. Tento skript mo??no spusti??
kedyko??vek chcete zavies?? font nastaven ako ??tandardn pre systm.

Premenn v sbore /etc/sysinit/i18n s (pou??vajte len men sborov bez
cesty a bez prpony!):

kbd:
    SYSFONT=lat2a-16                                                 
                                                                     
   
console-tools:
    SYSFONT=lat2u-16                                                 
    SYSFONTACM=iso02                                                 
                                                                     
   

Skriptk setsysfont obsahuj oba balky a kedyko??vek m??ete zavies?? font
nastaven ako systmov v sbore /etc/sysinit/i18n jednoduchm zadanm
+---------------------------------------------------------------------------+
|sh$ /sbin/setsysfont                                                       |
|                                                                           |
+---------------------------------------------------------------------------+

Pod??a toho, ??o sme si hovorili o tom, ??e pre v??etky virtulne konzoly
m??e by?? nastaven len jeden spolo??n font, nem ve??k zmysel zavdza??
nastavovanie fontu zvl???? pre ka??dho u??vate??a. S tm svis aj fakt,
??e nastavenie fontu sa vz??ahuje k danmu po??ta??u, pri ktorom prve
sedte a nie k tomu, ku ktormu ste pripojen napr. cez ssh.

Predsa len si viem predstavi?? prpad, ke?? niektor z viacerch pou??vate??
ov jednho po??ta??a potrebuje odli??n font. V tom prpade m??e vlo??i??
prkaz na zavdzanie fontov do svojich skriptov, ktor vykonva shell pri
prihlsen a odhlsen. Pre bash by to mohlo vyzera?? takto:

~/.bash_profile:
    if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && ! [ -f ~/.font ]; then 
            setfont -o ~/.font gr928a-8x16                                           
    fi                                                                               
                                                                                     
   
~/.bash_logout:
    if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && [ -f ~/.font ]; then 
            setfont ~/.font                                                        
            rm -f ~/.font                                                          
    fi                                                                             
                                                                                   
   

Vonkoncom to nie je idelne rie??enie, ale svoj ??el spln (minimlne po
moment prvho odhlsenia). Trochu sa s tm pozabvajte, aby sa font (a
rozlo??enie klves) menilo len pri prvom prihlsen a poslednom odhlsen,
tie?? setfont pod iXami nem ve??mi zmysel a tak... V Tips-HOWTO je uveden
spsob, ako zisti??, na ko??kch virtulnych konzolch je e??te u??vate??
prihlsen.

In??, aby bolo jasn, toto vm bude fungova?? len na loklnom stroji -
zamyslite sa, pre??o asi setfont (aj loadkeys) nefunguje cez vzdialen
terminl a ??i by ste z toho nie??o mali, keby to tak nebolo.

Ak to s takmto rie??enm myslte v??ne, tak skr uva??ujte nad modifikciou
skriptu /etc/profile.d/lang.sh, kde by sa kontroloval aj obsah u??vate??
skho sboru ~/.i18n a pod??a toho by sa zaviedol skript, popis rozlo??enia
klves, prpadne nejak premenn...
-----------------------------------------------------------------------------

3.2. Slovensk klvesnica na textovej konzole

Ke?? je slovensk font na konzole rozbehan a na??e nrodn znaky sa
zobrazuj sprvne, mme so sloven??inou problm ??slo dva - ako tam tie
znaky dosta??? Keby ste si chceli tento sbor len pre??ta?? bez potreby
nslednej nav??tevy psychiatra, sta??ilo by zavies?? nejak font so
slovenskou podporou. Ale ke????e ste uvedomel linuxk/uvedomel linux??
ka, hne?? chcete do Slovak-HOWTO prispie?? a pomocou klvesnice psa??
slovensk text. Na to potrebujete s tou klvesnicou nie??o urobi??.
-----------------------------------------------------------------------------

3.2.1. Popis rozlo??enia klves (keymap)

Adresre /usr/lib/kbd/keymaps/i386/qwertz/ a qwerty/ obsahuj po
nain??talovan balka kbd/console-tools aj popisy slovenskho rozlo??enia
klves. Pre ns s zaujmav sbory

sk-prog-qwerty.map.gz
sk-qwerty.map.gz     
sk-prog-qwertz.map.gz
sk-qwertz.map.gz     

Tieto sbory obsahuj defincie rozlo??enia klves pre slovensk jazyk, pri??
om rozdiely medzi nimi s v umiestnen klves Y a Z a po??te slovenskch
znakov, ktor pomocou nich mo??no napsa?? priamo (bez m??tvych klves).
Najviac sa na slovensk psac stroj podob sk-qwertz, najmen??ie zmeny
oproti americkej klvesnici s zase v sk-prog-qwerty.

Sbory v adresri /usr/lib/kbd/keymaps/i386/include/ obsahuj popis
zkladnch rozlo??en klves (azerty , qwerty, qwertz ), prdavnch klves
(keypad, windowkeys), prpadne problmovch klves ( delete, backspace, ctrl
). Sbory linux-*.inc.gz s ??pecifick pre linux (teda nie pre jazyk). S to
napr. k????e (F1-F12, kombinovanm s Ctrl a Shift a?? po F48), Shift-PgUp a 
Shift -PgDown, at??.

Keymapy *.inc.gz nepopisuj kompletn rozlo??enie klvesnice, ale len
niektorch jej ??ast. Vyu??vaj sa pri pripjan (include) zo sborov
*.map.gz, ??o je vhodn z dvodu jednoduch??ej konfigurcie klvesnice.
Naprklad zmenou jednho riadku v sbore s rozlo??enm sk-qwerty m??me
dosta?? rozlo??enie qwertz, prpadne (to asi vyu??ijete) jednoducho odstavi??
znaky euro a cent, ktor (zatia???) nepotrebujeme a zbyto??ne nm zaberaj
znaky E a C.

Na zavedenie sboru s popisom rozlo??enia klves sl??i nasledovn prkaz:

loadkeys nazov
kde nazov m??e by?? absoltna alebo relatvna cesta ku keymap sboru, alebo
meno sboru, pokia?? sa nachdza v adresri /usr/lib/kbd/keymaps/, ??i u?? s
prponou, alebo bez.

??tandardn slovensk popisy rozlo??enia klves njdeme vo vy????ie
spomnanch *.map.gz sboroch. Ak sa chcete vrti?? k ??tandardnmu
rozlo??eniu, prkaz
+---------------------------------------------------------------------------+
|sh$ loadkeys -d                                                            |
|                                                                           |
+---------------------------------------------------------------------------+
zavedie pvodn, ktor je ulo??en v sbore defkeymap.map.gz niekde medzi
ostatnmi keymap sbormi. Predtm ale nikdy nezabudnite zmeni?? re??im
slovenskej klvesnice na US znaky, tzn. 1 dva 1 a nie + at??. Ak by ste
predsa zabudli, je mo??n, ??e klvesy, kde sa nachdzali slovensk znaky,
nebud fungova?? sprvne (v skuto??nosti bud fungova?? sprvne, ale vm sa
to nebude p??i??). Vtedy znovu zave??te predchadzjcu keymapu (na nefunk??
n klvesy pou??ite AltGr - prav Alt) a klvesou Pause/Break v??etko
napravte. Potom m??ete znova zavies?? defkeymap.

Pokia?? sa vm nep??i ani jeden zo ??tandardnch keymap sborov pre sloven??
inu, ??o je pravdepodobn v??aka riadku
include "euro"                                                               
                                                                             
v include sboroch qwerty-layout.inc.gz aj qwertz-layout.inc.gz, m??ete k??
udne pozmeni?? existujci sbor s popisom rozlo??enia klves, prpadne
vytvori?? nov. Nebojte sa, je to zlo??it! Nebudem to tu rozpisova??
v??etko, prezrite si zopr kmap sborov, pre??tajte manulov strnku
keymaps(5) a mali by ste to ??ahko pochopi??.

My si povieme len o zkladnch veciach, ktor nm pom??u pozmeni??
existujce kmap sbory s popismi slovenskch klvesnc, aby ste si poradili s
(mne znmymi) komplikciami, alebo upravili rozlo??enie klves pod??a svojho
gusta.
-----------------------------------------------------------------------------

3.2.2. Include a nesprvna funkcia klves E a C

Problm s E a C je spsoben zavedenm jednotnej meny v eurpskej nii. Na
vine nie je ani tak EU, ale niekto, kto symboly pre euro a cent umiestnil na 
AltGr-E a AltGr-C, ??o s na??e oby??ajn E a C. Toti??, nrodn klvesnice
s v????inou rie??en tak, ??e po zaveden sboru na??alej funguje americk
rozlo??enie a na prepnanie do nrodnho re??imu sa pou??va klvesa Pause,
alebo m??me zadva?? nrodn klvesy pri s??asnom dr??an klvesy AltGr
(prav Alt). Sbor euro.inc, ktor definuje tieto dva problmov symboly, je
pripojen zo sboru qwerty-layout.inc, ktor zase pripjaj samotn slovensk
keymapy (sk-qwerty, sk-prog-qwertz, ??).

Rie??enie je ve??mi jednoduch - zeditujete qwerty-layout.inc (alebo
qwertz-layout.inc) a odkomentujete znakom # riadok
include "euro"                                                               
                                                                             
-----------------------------------------------------------------------------

3.2.3. Keycode a definovanie klves

Predchdzajci problm s eurom mo??no vyrie??i?? aj definovanm znakov E a C
v samotnom sbore sk-qwerty.kmap.gz (alebo inom, ktor pou??vate) pomocou
slova keycode:
keycode 18 = e                                                               
keycode 46 = c                                                               
                                                                             

V keymap sboroch je pre ka??d klvesu (alebo aspo?? pre ka??d, ktor
chceme predefinova??) jeden riadok pribli??ne tohto razenia:
keycode 3 = two at lcaron two nul nul nul nul Meta_two Meta_two...           
                                                                             

??slo za keycode ozna??uje ur??it klvesu a re??azce za = hovoria o tom,
ak znak m ovlda?? klvesnice generova?? pri stla??en tejto klvesy, a to
bu?? samotnej, alebo v kombincii so ??pecilnymi klvesmi Shift, AltGr, 
Control, Alt, ShiftL, ShiftR, Ctrl a CtrlR. To nm dva 256 mo??nch znakov
na ka??d klvesu.

V????inou sa pozme??uje len prvch 16 kombinci modifiktorov. To je vznam
riadku
keymaps 0-15                                                                 
                                                                             
na za??iatku kmap sborov.

V nasledujcom zozname je tchto 16 kombinci (po riadkoch):

??iadny     Shift             AltGr             Shift-AltGr             
Control     Shift-Control     AltGr-Control     Shift-AltGr-Control     
Alt         Shift-Alt         AltGr-Alt         Shift-AltGr-Alt         
Control-Alt Shift-Control-Alt AltGr-Control-Alt Shift-AltGr-Control-Alt 

Z h??adiska slovenskej klvesnice s dle??it len prv ??tyri - prv dva s
zvy??ajne nezmenen americk znaky, napr. two at, ??o je 2 @, a druh dva s
znaky slovenskej abecedy, ktor bude ovlda?? klvesnice posiela?? aplikcim
ak pri stla??en tejto klvesy budeme s??asne dr??a?? klvesu AltGr (prav 
Alt), napr. lcaron two, ??o je na??e ?? 2.

Aby ste mohli vklada?? slovensk znaky, nemuste cel ??as pridr??iava?? 
AltGr nosom, ale m??ete pou??i?? Pause/Break, ktor v kontexte s nrodnmi
klvesnicami funguje ako AltGr Lock. Chpte to tak, ??e ke?? sa prepnete do
slovenskho re??imu stla??enm Pause/Break, prv a druh dva re??azce v
ka??dom riadku keycode sa vymenia, napr.
two at lcaron two -> lcaron two two at                                       
                                                                             

Vtedy m??ete pou??i?? AltGr na zadvanie znakov americkej klvesnice, alebo
sa optovnm stla??enm Pause/Break prepn?? spt do US re??imu.

Riadok pre klvesu s kdom 41 (znaky ` a ~), m v sbore sk-qwerty.map.gz
nasledovn tvar:
keycode 41 = grave asciitilde dead_diaeresis dead_circumflex ...             
                                                                             

Mne osobne sa nep??i, ??e s tu umiestnen m??tve klvesy dead_diaeresis
(dve bodky nad znakom) a dead_circumflex (mk??e??), preto??e ich
nepotrebujem ---  aj  na slovenskej klvesnici predsa je. A keby aj nebolo,
na ich psanie m??em k??udne pou??i?? m??tvy klves mk??e??. O tom si
bli????ie povieme v ??asti o compose sekvencich. Teraz chcem ma?? na tomto
mieste znaky ; (semicolon) a  (degree) tak, ako je to na popiske mojej
klvesnice. Zmenm teda riadok takto:
keycode 41 = grave asciitilde semicolon degree ...                           
                                                                             

In??, ten stupe?? asi nie je stupe??, ale m??tvy znak kr??ku nad psmenom,
napr. v ??e??tine nad u, ale tak klves je nm fakt nani??. Rad??ej budeme
psa?? stupne.

Nzvy znakov, ktor sa pou??vaj pri definovan jednotlivch klves si
m??ete pre znaky ASCII zisti?? v sbore us.map.gz. ??seln kdy v??etkch
klves vm vyp??uje program

showkey

Pravidl pre nzvy znakov ??pecifickch pre sloven??inu v kmap sboroch:

 1. Prv psmeno v nzve ur??uje ASCII znak, pre ktor chceme pou??i??
    diakritiku.
   
 2. K nemu pridme identifiktor diakritickho znamienka:
   
    caron --- mk??e??         
    acute --- d????e??         
    diaeresis --- dve bodky nad
    circumflex --- vok??      
   
    Naprklad:
   
    scaron = ??    
    uacute =      
    Ocircumflex = 
   
   

Nzvy ??al??ch znakov ??pecifickch pre sloven??inu:

0xa7 ---  (paragraf)
degree ---  stupe?? 

Pre sprvnu interpretciu identifiktorov znakov s diakritikou je nutn na za
??iatku kmap sboru ur??i?? kdov strnku, pre ktor bude ur??en tento
popis rozlo??enia klves. Ide o to, ??e ten ist znak m??e ma?? v rznych
kdovch strnkach in ASCII kd. Implicitn hodnota je iso-8859-1, teda pre
slovensk keymapy je nutn vlo??i?? riadok:
charset "iso-8859-2"                                                         
                                                                             

E??te jeden prklad: ak chcete pou??va?? slovensk rozlo??enie qwertz a
americk rozlo??enie qwerty, potrebujete vymeni?? znaky Y a Z:
keycode 21 = y Y z Z                                                         
keycode 44 = z Z y Y                                                         
                                                                             

Na prv poh??ad to m??e fungova?? dobre, ale problm sa prejav pri zapnutom
Caps Lock - znaky Y a Z sa stle p??u malmi psmenami. Pri psan popisov
rozlo??en znakov mo??no takto problm o??etri?? pridanm psmena + pred
ka??d psmeno v keycode riadku danej klvesy. Psmeno + ur??uje nasledovnmu
psmenu atribt letter, teda sa bude pri stla??enom Caps Lock psa?? ve??k
psmeno. V??etky psmen a-z, A-Z maj tento atribt priraden automaticky,
ale to len v prpade, ??e maj keycode riadok tvaru:
keycode 21 = y                                                               
                                                                             

V na??om prpade teda musme priradi?? tento atribt v??etkm znakom
explicitne. Tak??e, kone??n prava keymapy bude:
keycode 21 = +y +Y +z +Z                                                     
keycode 44 = +z +Z +y +Y                                                     
                                                                             

Pre vmenu psmen toto rie??enie funguje spo??ahlivo, bohu??ia??, e??te stle
neexistuje spsob, ktorm by sa dalo dosiahnu?? naprklad psanie ve??kch
psmen s diakritikou pri zapnutom Caps Lock jednoduchm stl??anm ich
klves, ako je to v slovenskom popise rozlo??enia klves pre X Window System.
-----------------------------------------------------------------------------

3.2.4. M??tve klvesy a sekvencie compose

S m??tvymi klvesami svisia v kmap sboroch riadky tvaru
compose 'c1' 'c2' to 'c3'                                                    
                                                                             

Predstavme si m??tve znaky ako plne oby??ajn znaky s tm rozdielom, ??e
ovlda?? klvesnice ich neposiela aplikcim, ale zostan niekde ??visie????,
km z klvesnice neprde ??al?? znak. Ovlda?? klvesnice nepo??le ani
tento, ale poksi sa spoji?? ho s predchdzajcim m??tvym znakom a a??
vsledok spojenia pust ??alej. No, a ako m to spojenie uskuto??ni??, to mu
presne hovoria riadky compose v keymap sboroch.

V nasledujcej tabu??ke je zoznam m??tvych znakov pou??vanch v sloven??ine,
spolu s vznamom a znakom, ktorm sa ozna??uj v compose sekvencich.


Tabu??ka 2. M??tve klvesy
+----------------+-------------+-------+
|Nzov           |Vznam       |Compose|
+----------------+-------------+-------+
|dead_acute      |d????e??     |\'     |
+----------------+-------------+-------+
|dead_circumflex |mk??e??     |^      |
+----------------+-------------+-------+
|dead_diaeresis  |dve bodky nad|"      |
+----------------+-------------+-------+

Postup pri psani compose sekvenci

 1. Ka??d compose sekvencia sa za??na k????ovm slovom compose.
   
 2. Nasleduje compose znak m??tvej klvesy (pod??a tabu??ky M??tve klvesy),
    naprklad \'.
   
    Druh je znak, s ktorm chceme m??tvu klvesu kombinova??, naprklad A.
   
    Za k????ovm slovom to nasleduje vsledok spojenia m??tvej klvesy a
    znaku bez diakritiky, teda .
   

Je praktick ma?? pri vytvran compose sekvenci zaveden slovensk font,
aby ste vsledok mohli hne?? kontrolova??. Ve??kou pomocou je tie?? mo??nos??
prkazu loadkeys ??ta?? zo ??tandardnho vstupu. Naprklad:
+---------------------------------------------------------------------------+
|sh$ loadkeys                                                               |
|include "/usr/lib/kbd/keymaps/i386/include/windowkeys.map.gz"              |
|keycode 41 = grave asciitilde semicolon dead_diaeresis                     |
|compose '"' 'a' to ''                                                     |
|# ukon??enie zadvania:  EOF  -  Ctrl-D                                    |
|sh$                                                                        |
|                                                                           |
+---------------------------------------------------------------------------+

Popis aktulneho rozlo??enia klves m??ete ulo??i?? do sboru prkazom
+---------------------------------------------------------------------------+
|sh$ dumpkeys > subor                                                       |
|                                                                           |
+---------------------------------------------------------------------------+

Ak nemte zaveden slovensk popis rozlo??enia klves, muste zadva?? tieto
znaky ako Alt sekvencie, poprpade vklada?? ich hex kdy v tvare 0xed pre .
Vpis znakov aktulneho fontu spolu s ich hex kdmi vm urob program

kbd:
    showfont
   
console-tools:
    showcfont
   

E??te raz na??a compose sekvencia a nejak navy??e:
compose '\'' 'A' to ''   # dlh A cez d????e??                              
compose '^'  'O' to ''   # O s vok??om cez mk??e??                        
compose '^'  'a' to ''   # ??irok a cez mk??e??,                          
compose '^'  'A' to 0x84  # ...preto nepotrebujeme dead_diaeresis            
                                                                             

Mimochodom, v sbore /usr/lib/kbd/keymaps/compose/compose.latin2 mte zoznam
compose sekvenci pre normu ISO-8859-2.
-----------------------------------------------------------------------------

3.2.5. Automatick zavdzanie keymap sboru

Na nastavenie rozlo??enia klvesnice, ktor chceme zavies?? pri ??tarte
systmu, nm sl??i sbor /etc/sysconfig/keyboard. Pre Slovka ako repa by
mal vyzera?? minimlne takto:
KEYTABLE=sk-qwerty     # zavedie rozlo??enie klves sk-qwerty                
KBCHARSET=iso-8859-2   # ...a spomnan sbor compose.latin2                 
                                                                             

Nastavenie klvesnice pri ??tarte m na starosti skript keytable, ktor je
volan priamo z rc.sysinit, tak??e netreba vytvra?? linky v adresroch pre
runlevel 3/multiuser, prpadne 5/X.

V dokumentcii k initscripts sa p??e: ??Ak ulo??te popis rozlo??enia klves
(pou??itm dumpkeys) do sboru /etc/sysconfig/console/default.kmap, zavedie
sa pri ??tarte systmu e??te pred pripjanm/kontrolou sborovch systmov.
To m??e by?? u??ito??n, ak potrebujete zada?? heslo roota v prpade
problmov. Mus to by?? ??dumpnut?? popis rozlo??enia klves a nie
skoprovan sbor z /usr/lib/kbd/keytables/, preto??e tie ??asto e??te
vkladaj (include) in popisy z tejto adresrovej ??truktry.??

Po pripojen sborovch systmov, v prpade, ??e existuje spustite??n sbor
/etc/rc.d/init.d/keytable a adresr /usr/lib/kbd/keymaps/, vykon sa prkaz
+---------------------------------------------------------------------------+
|sh# /etc/rc.d/init.d/keytable start                                        |
|                                                                           |
+---------------------------------------------------------------------------+

Tento u?? zavedie popis rozlo??enia klves tak, ako to mte ur??en
premennmi v sbore /etc/sysconfig/keyboard, preto nemuste vytvra?? odkazy
v jednotlivch rc[1-5].d/ adresroch.

To, ??o sme si hovorili o zmene fontu pri prihlsen nejakho u??vate??a na
virtulnej konzole, sa d aplikova?? aj na rozlo??enie klves. plne
najjednoduch??ie rie??enie (ktor sa pri prvom odhlsen po??le do krkov) je
asi takto:

~/.bash_profile:
    if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && ! [ -f ~/.keymap ]; then 
            dumpkeys > ~/.keymap                                                       
            loadkeys gr.map                                                            
    fi                                                                                 
                                                                                       
   
~/.bash_logout:
    if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && [ -f ~/.keymap ]; then 
            loadkeys ~/.keymap                                                       
            rm -f ~/.keymap                                                          
    fi                                                                               
                                                                                     
   

-----------------------------------------------------------------------------
3.3. Zhrnutie nastaven konzoly

Pokia?? som sa niekde nesekol, tak minimlne v distribcich RedHat a 
Mandrake by po tchto zmench mala do pohody za??lapa?? slovensk podpora
(fonty + klvesnica).

/etc/sysconfig/i18n:
    kbd:
        SYSFONT=lat2a-16                                              
                                                                      
       
    console-tools:
        SYSFONT=lat2u-16                                              
        SYSFONTACM=iso02                                              
                                                                      
       
   
   
/etc/sysconfig/keyboard:
    KEYTABLE=sk-qwertz                                               
    KBCHARSET=iso-8859-2                                             
                                                                     
   

Tie??, ak zadvate rootovsk heslo s pou??itm inho rozlo??enia klves ako
je ??tandardn (us), vlo??te si jeho popis do sboru /etc/sysconfig/console/
default.kmap. Pozor, nesmiete len tak skoprova?? sbor, alebo vytvori??
link! Ak chcete pou??i?? naprklad rozlo??enie sk-qwertz, urobte to takto:
+---------------------------------------------------------------------------+
|sh$ loadkeys sk-qwertz                                                     |
|sh# dumpkeys >/etc/sysconfig/console/default.kmap                          |
|                                                                           |
+---------------------------------------------------------------------------+

Ak chcete nastavi?? slovensk font a klvesnicu len jednorazovo, tieto
prkazy by to mali dokza??:

kbd:
    +---------------------------------------------------------------+
    |sh$ setfont lat2a-16                                           |
    |sh$ loadkeys sk-qwertz                                         |
    |                                                               |
    +---------------------------------------------------------------+
   
console-tools:
    +---------------------------------------------------------------+
    |sh$ consolechars -f lat2u-16 -m iso02                          |
    |sh$ loadkeys sk-qwertz                                         |
    |                                                               |
    +---------------------------------------------------------------+
   

...a nasp?? na ??tandardn nastavenia:

kbd:
    +---------------------------------------------------------------+
    |sh$ setfont                                                    |
    |sh$ loadkeys -d                                                |
    |                                                               |
    +---------------------------------------------------------------+
   
console-tools:
    +---------------------------------------------------------------+
    |sh$ consolechars -d                                            |
    |sh$ loadkeys -d                                                |
    |                                                               |
    +---------------------------------------------------------------+
   

-----------------------------------------------------------------------------
4. Nastavenia X Window Systemu

??oko??vek sa chystte robi?? s X Window Systemom a sloven??inou dokopy, s??
ubujem, ??e vm to nebude fungova??, ak nenastavte totok taktok:
LC_CTYPE=sk                                                                  
                                                                             

??o to znamen a ako sa to nastavuje, tak o tom pojednva kapitola Miestne
nastavenia.
-----------------------------------------------------------------------------

4.1. Slovensk fonty v X Window Systeme

Predpokladm, ??e X Window System mte nain??talovan, prpadne aj X Font
Server, va????inu dle??itch vec sme si povedali v ??asti o konzole, po??me
si rovno nain??talova?? slovensk fonty.
-----------------------------------------------------------------------------

4.1.1. In??talcia fontov - X server

Slovensk fonty pre X njdeme v balku XFree86-ISO8859-2, ve??a ??al??ch je
v balkoch XFree-ISO8859-2-<druh>-fonts, kde <druh> m??e by?? Type1, 100dpi
alebo 75dpi. Ak chcete pou??va?? sloven??inu serizne (Gimp, Netscape,
lokalizcia), nain??talujte si v??etky, ak potrebujete slovensk font len
napr. v XTerme, posta?? vm zkladn balk.

Po rozbalen archvu sa fonty nachdzaj na nieko??kch miestach. V??etky
cesty k novm fontom si treba odpisa??, zapamta??, ma?? na o??iach:

/usr/share/fonts/ISO8859-2/misc  
/usr/share/fonts/ISO8859-2/75dpi 
/usr/share/fonts/ISO8859-2/100dpi
/usr/share/fonts/ISO8859-2/Type1 

Tieto cesty toti?? budeme vklada?? do konfigura??nho sboru X Window Systemu
(/etc/X11/XF86Config, prpadne /etc/X11/XF86Config-4). Tm sprstupnme X
serveru fonty z tchto adresrov. Sekciu "Files" upravme vlo??enm riadkov
FontPath:
Section "Files"                                                              
    ...                                                                      
    FontPath   "/usr/share/fonts/ISO8859-2/misc"                             
    FontPath   "/usr/share/fonts/ISO8859-2/75dpi"                            
    FontPath   "/usr/share/fonts/ISO8859-2/100dpi"                           
    FontPath   "/usr/share/fonts/ISO8859-2/Type1"                            
EndSection                                                                   
                                                                             

Sprvne poradie riadkov s cestami k fontom njdete v XWindow-User-HOWTO, ale
nemali by ste ma?? ve??k problmy ani ke?? slovensk fonty vlo??te na
koniec zoznamu.

Za behu X Window Systemu pridte nov adresre s fontami prkazom
+-----------------------------------------------------------------------------------+
|sh$ xset +fp /usr/share/fonts/ISO8859-2/misc, /usr/share/fonts/ISO8859-2/75dpi, ?? |
|                                                                                   |
+-----------------------------------------------------------------------------------+
-----------------------------------------------------------------------------

4.1.2. In??talcia fontov - X Font Server

X Font Server ponka druh spsob spravovania fontov pre X Window Server, a
to ako pre loklnu ma??inu, tak aj pre vzdialen systmy. Modern distribcie
u?? po in??talcii ponkaj nakonfigurovan X Font Server a X Window System,
ktor vyu??va jeho slu??by.

Pri tomto spsobe treba cesty k fontom vlo??i?? do konfigura??nho sboru X
Font Serveru a konfigurcia v /etc/X11/X86Config (XF86Config-4) by mala
vyzera?? takto:
Section "Files"                                                              
    FontPath "unix/:7100"                                                    
EndSection                                                                   
                                                                             
za predpokladu, ??e X Font Server be?? na porte 7100 (vo??ba prkazovho
riadku -port).

Ak teda pou??vate xfs, nie??o podobn ako v predchdzajcej kapitole urobte
s konfigura??nm sborom pre tento program (/etc/X11/fs/config) v ??asti
catalogue:
catalogue = ...,                                                             
        /usr/share/fonts/ISO8859-2/misc,                                     
        /usr/share/fonts/ISO8859-2/75dpi,                                    
        /usr/share/fonts/ISO8859-2/100dpi,                                   
        /usr/share/fonts/ISO8859-2/Type1                                     
                                                                             

Hne?? potom mus xfs znovu na??ta?? konfigura??n sbor a tm umo??nte
pou??vanie slovenskch fontov loklnemu aj inm X serverom:
+---------------------------------------------------------------------------+
|sh# killall -USR1 xfs                                                      |
|                                                                           |
+---------------------------------------------------------------------------+
-----------------------------------------------------------------------------

4.1.3. Slovensk TrueType fonty

Ak vlastnte leglnu kpiu systmu WindowsXX (kde XX je hoci??o), alebo MacOS
, nemali by vs zavrie??, ak pou??ijete TrueType fonty obsiahnut v ich
distribcich. Existuje aj mnoho balkov s TrueType fontmi s podporou normy 
ISO-8859-2, ktor s vo??ne dostupn.

Popis in??talcie takchto fontov prebehneme len v krtkosti, podrobnej??
njdete v dokumentcii k balku free-type:

 1. Skoprujte sbory s TrueType fontami napr. do adresra /usr/share/fonts/
    ttf/win/. Odpor??am zmeni?? men sborov s fontami aj ich prpony na
    mal psmen -- mal som s tm problmy.
   
 2. Vytvorte v ka??dom adresri sbor s informciami o scalable fontoch
    fonts.scale nasledovnm prkazom:
    +-----------------------------------------------------------------------+
    |sh# cd /usr/share/fonts/ttf/win                                        |
    |sh# ttmkfdir -o fonts.scale                                            |
    |                                                                       |
    +-----------------------------------------------------------------------+
   
    Ak to nie je celkom ono a dostanete ve??a chybovch hlsen, alebo sbor
    fonts.scale obsahuje prli?? mlo zznamov o fontoch v adresri, skste
    pou??i?? s prkazom ttmkfdir aj vo??bu prkazoveho riadku -c.
   
 3. Zoznam fontov v sbore, ktor na??tava X server aj xfs, vytvorte
    nasledovne:
    +-----------------------------------------------------------------------+
    |sh# cd /usr/share/fonts/ttf/win                                        |
    |sh# mkfontdir                                                          |
    |                                                                       |
    +-----------------------------------------------------------------------+
   

Od tohto momentu pokra??ujte ??tandardnm spsobom tak, ako je to popsan v
predchdzajcej ??asti o konfigurcii X servera alebo xfs.
-----------------------------------------------------------------------------

4.1.4. ??o je in so slovenskmi fontami

Okrem toho, ??e sa slovensk znaky zobrazuj sprvne, ni??. Fonty z balkov
pre normu ISO-8859-2 sa sce volaj inak, ale vzh??adom zodpovedaj
??tandardnm fontom. V nasledujcej tabu??ke s uveden zodpovedajce dvojice
fontov:


Tabu??ka 3. Slovensk ekvivalenty ??tandardnch fontov
+-----------------------+-----------+
|??tandardne            |iso8859-2  |
+-----------------------+-----------+
|Times                  |Kathimerini|
+-----------------------+-----------+
|Helvetica              |Aplos      |
+-----------------------+-----------+
|New Century Schoolbook |Anagnostiko|
+-----------------------+-----------+
|Lucida                 |Fotinos    |
+-----------------------+-----------+
|Utopia                 |Chimera    |
+-----------------------+-----------+
|Charter                |Chartis    |
+-----------------------+-----------+

Berte tto tabu??ku len ako informatvny daj, ktor pravdepodobne nikdy
nebudete potrebova?? v??aka sborom fonts.alias v adresroch so slovenskmi
fontmi. Tie zabezpe??uj nahrdzanie mien ??tandardnch fontov s uvedenou
normou ISO-8859-2 zodpovedajcimi menami slovenskch fontov. Naprklad
po??iadavka na font

-b&h-lucida-bold-i-normal-sans-11-80-100-100-p-69-iso8859-2
poskytne a teda zobraz v skuto??nosti font

-biznet-fotinos-bold-i-normal-sans-11-80-100-100-p-69-iso8859-2
-----------------------------------------------------------------------------

4.1.5. Strie??anie ta??kost

Ak budete dostva?? po spusten X serveru chybov hlsenia typu ??Can't open
default font 'fixed'?? alebo ??unable to open font ...??, alebo vm
jednoducho nie??o spojen s fontami pod iXami bude kazi?? nladu, uistite sa,
??e mte v poriadku nasledovn veci.

 1. V??etky adresre s fontami, samotn sbory fontov a sbory, ktor ??ta X
    Window System alebo X Font Server, musia ma?? nastaven rozumn
    prstupov prva.
   
 2. V adresroch, v ktorch sa nachdzaj fonty, mus existova?? sbor
    fonts.dir. Ak nie, spustite v tchto adresroch program mkfontdir. V
    adresroch s TrueType fontmi muste e??te predtm vytvori?? sbor
    fonts.scale tak ako je to popsane v ??asti Slovensk TrueType fonty.
   
 3. Ak idete bez xfs, naozaj v??etky adresre s fontami musia by?? uveden v
    sbore XF86Config.
   
 4. V prpade, ze pou??vate xfs, tieto adresre musia by?? uveden v sbore
    /etc/X11/fs/config. Navy??e, xfs mus be??a?? na nejakom porte (napr.
    7100) a v XF86Config mus by?? cesta k fontom uveden ako adresa s ??
    slom toho portu, asi takto:
    FontPath "unix/:7100"                                            
                                                                     
   
 5. Po zmench v konfigura??nch sboroch X Window Systemu alebo X Font
    Serveru je nutn re??tart alebo znovuna??tanie nastaven:
   
    X Window System
        +------------------------------------------------------------+
        |sh$ xset fp rehash                                          |
        |                                                            |
        +------------------------------------------------------------+
       
    X Font Server
        +------------------------------------------------------------+
        |sh# killall -USR1 xfs                                       |
        |                                                            |
        +------------------------------------------------------------+
       
   
   
 6. Ak mte v inittabe nastaven sp????anie X serveru pri ??tarte systmu
    (runlevel 5/X), rad??ej si to pri pokusoch s fontami zme??te na 3/
    multiuser a?? pokia?? si nie ste sakramentsky ist, ??e X server pri
    ??tarte njde fonty. Ak to neurobte a nastavenia bud nesprvne, za??n
    sa dia?? zhadn veci typu ??X server sa skon??, lebo nenjde fonty ale
    init ho znovu spust a ten nenjde fonty, tak sa skon??, ale init ho...
    ??. Znakom toho je hl??ka INIT: Id "x" respawning too fast: disabled for
    5 minutes.
   
 7. X Window System h??ad (pre normlneho u??vate??a) konfigura??n sbory
    v tomto porad:
   
    /etc/X11/<cmdline>                      
    /usr/X11R6/etc/X11/<cmdline>            
    /etc/X11/$XF86CONFIG                    
    /usr/X11R6/etc/X11/$XF86CONFIG          
    /etc/X11/XF86Config-4                   
    /etc/X11/XF86Config                     
    /etc/XF86Config                         
    /usr/X11R6/etc/X11/XF86Config.<hostname>
    /usr/X11R6/etc/X11/XF86Config-4         
    /usr/X11R6/etc/X11/XF86Config           
    /usr/X11R6/lib/X11/XF86Config.<hostname>
    /usr/X11R6/lib/X11/XF86Config-4         
    /usr/X11R6/lib/X11/XF86Config           
   
    Pamtajte na to pri editovan konfigurkov a v??dy sa uistite, ??i
    neexistuje sbor, ktor je v tomto zozname vy????ie, ako ten, ktor
    editujete.
   

-----------------------------------------------------------------------------
4.2. Slovensk klvesnica v X Window Systeme

Skr jak to tu cel rozto??me, zadajte prkaz
+---------------------------------------------------------------------------+
|sh$ rpm -q XFree86                                                         |
|                                                                           |
+---------------------------------------------------------------------------+

V??etky tie ??sla za XFree86, ??o vm tento prkaz vyp??e, udvaj verziu
v??ho XFree86 X Window Systemu.

Existuje presne ??tyridsa??dva dvodov, pre??o prejs?? na XFree86 verziu 3.2
alebo vy????iu, a len dva, pre??o zosta?? pri star??ej verzii. Red Hat Linux
6.0 obsahuje XFree86 , verziu 3.3.3 a Linux Mandrake 7.0 u?? verziu 3.3.6.

Pokia?? ste svoj opera??n systm nezdedili po starch rodi??och, je vysoko
pravdepodobn, ??e mte verziu XFree86 vy????iu ako 3.2. Inak ste naozaj krok
pozadu a na adrese [ftp://ftp.xfree86.org] ftp://ftp.xfree86.org njdete to,
??o treba.

Ak aj po predchdzajcich slovch, upozorneniach a odpor??aniach odmietate
upgrade na verziu 3.2, dr??te sa nasledujcich krokov:

 1. Ak mte Slovak-HOWTO vytla??en na papieri, uchopte tento do ??avej ruky
    (ak ste ??avk, robte v??etko naopak), zapa??ova?? do pravej,
    zachovavajte dostato??n vzdialenos?? od inch zpalnch materilov a
    nekompromisne konajte.
   
 2. V prpade, ??e mte tento sbor ulo??en niekde na disku, prkazom
    +-----------------------------------------------------------------------+
    |sh$ su -c'rm -fr /'                                                    |
    |                                                                       |
    +-----------------------------------------------------------------------+
    sa ho do nieko??kch mint po zadan hesla zaru??ene zbavte.
   

-----------------------------------------------------------------------------
4.2.1. Konfigurcia klvesnice

XFree86 3.2 a nov??ie u?? maj tzv. XKEYBOARD roz??renie, ktor
zjednodu??uje konfigurciu klvesnice pre X Window System. Teoreticky netreba
urobi?? viac ako v sbore /etc/X11/XF86Config vlo??i?? do sekcie "Keyboard"
nie??o takto:
Section "Keyboard"                                                           
    ...                                                                      
    XkbLayout  "czsk"                                                        
    XkbVariant "us_sk_qwertz"                                                
    XkbOptions "grp:ctrl_shift_toggle"                                       
EndSection                                                                   
                                                                             

Ak u?? ste nebodaj u??vate??om XFree86 verzie 4.0.0 alebo vy????ej, vlo??te
do sboru /etc/X11/XF86Config-4 toto:
Section "InputDevice"                                                        
    ...                                                                      
    Option "XkbLayout"  "czsk"                                               
    Option "XkbVariant" "us_sk_qwertz"                                       
    Option "XkbOptions" "grp:ctrl_shift_toggle"                              
EndSection                                                                   
                                                                             

Riadok v konfigura??nom sbore
XkbLayout "czsk"                                                             
                                                                             
prpadne pre verziu ?? 4
Option "XkbLayout"  "czsk"                                                   
                                                                             
hovor asi to??ko, aby X server pou??il popis rozlo??enia klves ulo??en v
sbore czsk. Tento a ostatn sbory s XKB keymapami sa nachdzaj v adresri
/usr/X11R6/lib/X11/xkb/symbols/ .

Bli????ie si o formte tchto sborov povieme neskr, teraz si len otvorte
sbor czsk a pozrite si jeho ??truktru -- hlavne ??asti xkb_symbols. Pre
sloven??inu s dle??it tieto varianty:

us_sk_qwerty
us_sk_qwertz
us_sk_prog  
sk_us_qwerty
sk_us_qwertz
sk_us_prog  

Niektor z tchto re??azcov dosa??te do riadku
XkbVariant "..."                                                             
                                                                             
pre star??ie verzie X Window Systemu, alebo
Option "XkbVariant" "..."                                                    
                                                                             
v konfigura??nom sbore pre X sever verzia 4.

Varianty us_sk_qwerty a sk_us_qwerty s prakticky toto??n, jedin rozdiel je
v tom, ktor rozlo??enie klves bude nastaven po ??tarte X Window Systemu.
Pre sk_us_* je to slovensk, pre us_sk_* zase americk.

Prepna?? medzi slovenskm a americkm rozlo??enm klves mo??no klvesom 
Scroll Lock, prpadne aj inmi, ak vlo??te do konfigurcie klvesnice
riadok:
+---------------------------------------------------------------------------+
|Options "grp:..."                                                          |
|                                                                           |
+---------------------------------------------------------------------------+
alebo pre X Window System verzie 4.0 alebo nov??:
+---------------------------------------------------------------------------+
|Option "XkbOptions" "grp:..."                                              |
|                                                                           |
+---------------------------------------------------------------------------+

??as?? grp:?? nahra??te niektorou z nasledujcich mo??nost a m??ete
prepna?? rozlo??enia klves pomocou danej klvesovej skratky:


Tabu??ka 4. Mo??nosti prepnania medzi rozlo??eniami klves
+---------------------+-------------------------------+
|vo??ba               |prepnanie medzi rozlo??eniami |
+---------------------+-------------------------------+
|grp:ctrl_shift_toggle|LShift + LCtrl / RShift + RCtrl|
+---------------------+-------------------------------+
|grp:caps_toggle      |Caps Lock / LShift + RShift    |
+---------------------+-------------------------------+
|grp:ctrl_alt_toggle  |Ctrl + Alt                     |
+---------------------+-------------------------------+

Pri nastavovan alternatvnych klvesovch kombinci na prepnanie medzi
rozlo??eniami klves si dvajte pozor, aby dan nastavenie nekolidovalo s u??
existujcimi klvesovmi skratkami (naprklad v??ho mana??ra okien).
Naprklad pri nastavenom ctrl_alt_toggle nefunguje Ctrl-Alt-Backspace (Kill X
Server).
-----------------------------------------------------------------------------

4.2.2. XKB keymapy

X Window System umo????uje definova?? vlastn popisy rozlo??enia klves
prakticky pre akko??vek jazyk. Na to sl??ia keymap sbory -- nie??o ve??mi
podobn tm keymap sborom, o ktorch sme hovorili v ??asti o nastaveniach
konzoly. Formt keymap sborov pre X Window System dovo??uje vytvrat sbory
s jednoduchm popisom len ??asti klvesnice, ale aj zlo??it sbory s mnohmi
rozlo??eniami.

Naozaj nem zmysel podrobne popisova?? mo??nosti XKB keymap sborov, sn??
bud sta??i?? len pln zklady, ktor vm dovolia robi?? mal zmeny v u??
existujucich popisoch rozlo??enia klves. Podstatne viac o tchto sboroch sa
dozviete, ke?? si ich sami pozriete a posk??ate.

V XKB popisoch rozlo??enia klves maj riadky takto formt:
key <TLDE> { [ quoteleft, asciitilde ], [ semicolon, degree ] };             
                                                                             

K????ov slovo key ozna??uje za??iatok defincie znaku, ktorho kd
nasleduje uzavret v <a>, cel definicia je uzavret v krtench ztvorkch
a dvojice znakov pre ka??d skupinu (Group) sa uzavieraj do hranatch
ztvoriek. Skupiny m??u by?? definovan naprklad takto:
name[Group1] = "US/ASCII";                                                   
name[Group2] = "Slovak";                                                     
                                                                             

Potom prv dva znaky (quoteleft a asciitilde) v defincii znaku platia pre
prv skupinu ( US/ASCII) a druh dva (semicolon a degree) pre druh skupinu
(Slovak).

Kdy jednotlivch klvesov ??ahko zistte z keymap sborov, ktorch je v
adresri /usr/X11R6/lib/X11/xkb/symbols/ naozaj dos??, takisto, nzvy znakov
a m??tvych klves sa ve??mi nel??ia od tch, ktor platia v keymap sboroch
pre textov konzolu. No a nakoniec, v prlohe XKB keymap njdete jeden
vzorov prklad slovenskho rozlo??enia klves pre X Window System.
-----------------------------------------------------------------------------

4.3. Slovensk my?? v X Window Systeme

Mimoriadne zlo??it bolo do verzie 4.0.1 nastavovanie sloven??iny pre my??.
Na??tastie, vvojri si spomenuli, ??e i toto zariadenie a jeho ovlda??e by
mali v plnej miere podporova?? miestne nastavenia tak, ako je to naprklad u
klvesnice. Dokonca sa objavili pokusy lokalizova?? tablety a sveteln per.

V predchdzajcich verzich X Window Systemu bola tto podpora ve??mi slabo
implementovan a len nieko??km nrodnostiam sa podarilo rozchodi?? my?? vo
svojom jazyku. Slovensk pou??vatelia museli na svojich my??iach robi??
rzne pravy od tuprovania ??nry a?? po kastrciu, ale vsledky boli aj tak
neuspokojiv.

Pop??eme si teraz v krtkosti postup posloven??ovania my??i v X Window
Systeme, verzia 4.0.1 a vy????ie:

 1. Odpojte svoju my?? od po??ta??a, poutierajte a vyle??tite jej gu??u,
    skontrolujte mikrotla??idl a celkovo ju o??etrite. Odlo??te ju do tepla
    a sucha. Dle??it je aspo?? raz za de?? k nej pristpi?? s Pravidlami
    slovenskho pravopisu a prjemnm hlasom pred??tava?? slov zo slovnka.
    Po pr ty??d??och m??ete prejs?? k jednoduchej beletrii a rozprvkam.
   
 2. Po??as tohto obdobia odvykania my??i od cudzch jazykov nain??talujte
    slovensk fonty a rozlo??enie klves. Takisto sa pokste pozh??a??
    slovensk preklady ob??bench aplikci va??ej my??i. Ako pozadie
    obrazovky odpor??am nastavi?? slovensk zstavu a adresre s hudbou by
    ste mali obohati?? o tituly ako In Kafe, Maduar a rzne in rockov
    uragny a punkov smr??te.
   
 3. Ak mte pocit, ??e my?? je pripraven vstpi?? do ??isto slovenskho
    prostredia va??ich iXov, opatrne ju pripojte a poukazujte jej v??etky
    zkutia jej vynovenho domova.
   

E??te by som rd pripomenul, ??e nie v??etky my??i s rovnako odoln vo??i
zmenm nrodnho prostredia a preto sa v??dy pri kpe my??i informujte na
mo??nosti posloven??ovania toho ktorho vrobku.
-----------------------------------------------------------------------------

4.4. Prklady

4.4.1. XF86Config-4

??as?? konfigura??nho sboru X Window Systemu (4.0.1) s rozbehanm X Font
Serverom, slovenskm rozlo??enm klves s prepnanm medzi americkm a
slovenskm pomocou Shift + Ctrl.
Section "Files"                                                              
    RgbPath     "/usr/X11R6/lib/X11/rgb"                                     
    FontPath    "unix/:7100"                                                 
    ModulePath  "/usr/X11R6/lib/modules"                                     
EndSection                                                                   
                                                                             
Section "InputDevice"                                                        
    Identifier  "Keyboard1"                                                  
    Driver      "Keyboard"                                                   
    Option "AutoRepeat" "500 30"                                             
    Option "XkbRules"   "xfree86"                                            
    Option "XkbModel"   "pc104"                                              
    Option "XkbLayout"  "czsk"                                               
    Option "XkbVariant" "us_sk_qwertz"                                       
    Option "XkbOptions" "grp:ctrl_shift_toggle"                              
EndSection                                                                   
                                                                             
-----------------------------------------------------------------------------

4.4.2. XKB keymap

Prklad plne jednoduchho popisu rozlo??enia klves pre sloven??inu:
partial default alphanumeric_keys                                            
xkb_symbols "sk_us" {                                                        
                                                                             
    name[Group1] = "Slovak";                                                 
    name[Group2] = "US/ASCII";                                               
                                                                             
// line 1                                                                    
    key <TLDE> {     [       semicolon,      degree          ],              
                     [       quoteleft,      asciitilde      ]       };      
    key <AE01> {     [            plus,      1               ],              
                     [               1,      exclam          ]       };      
    key <AE02> {     [          lcaron,      2               ],              
                     [               2,      at              ]       };      
    key <AE03> {     [          scaron,      3               ],              
                     [               3,      numbersign      ]       };      
    key <AE04> {     [          ccaron,      4               ],              
                     [               4,      dollar          ]       };      
    key <AE05> {     [          tcaron,      5               ],              
                     [               5,      percent         ]       };      
    key <AE06> {     [          zcaron,      6               ],              
                     [               6,      asciicircum     ]       };      
    key <AE07> {     [          yacute,      7               ],              
                     [               7,      ampersand       ]       };      
    key <AE08> {     [          aacute,      8               ],              
                     [               8,      asterisk        ]       };      
    key <AE09> {     [          iacute,      9               ],              
                     [               9,      parenleft       ]       };      
    key <AE10> {     [          eacute,      0               ],              
                     [               0,      parenright      ]       };      
    key <AE11> {     [           equal,      percent         ],              
                     [           minus,      underscore      ]       };      
    key <AE12> {     [      dead_acute,      dead_caron      ],              
                     [           equal,      plus            ]       };      
                                                                             
// line 2                                                                    
    key <AD01> {     [               q,      Q               ],              
                     [               q,      Q               ]       };      
    key <AD02> {     [               w,      W               ],              
                     [               w,      W               ]       };      
    key <AD03> {     [               e,      E               ],              
                     [               e,      E               ]       };      
    key <AD04> {     [               r,      R               ],              
                     [               r,      R               ]       };      
    key <AD05> {     [               t,      T               ],              
                     [               t,      T               ]       };      
    key <AD06> {     [               z,      Z               ],              
                     [               y,      Y               ]       };      
    key <AD07> {     [               u,      U               ],              
                     [               u,      U               ]       };      
    key <AD08> {     [               i,      I               ],              
                     [               i,      I               ]       };      
    key <AD09> {     [               o,      O               ],              
                     [               o,      O               ]       };      
    key <AD10> {     [               p,      P               ],              
                     [               p,      P               ]       };      
    key <AD11> {     [          uacute,      slash           ],              
                     [     bracketleft,      braceleft       ]       };      
    key <AD12> {     [      adiaeresis,      parenleft       ],              
                     [    bracketright,      braceright      ]       };      
                                                                             
// line 3                                                                    
    key <AC02> {     [               s,      S               ],              
                     [               s,      S               ]       };      
    key <AC03> {     [               d,      D               ],              
                     [               d,      D               ]       };      
    key <AC04> {     [               f,      F               ],              
                     [               f,      F               ]       };      
    key <AC05> {     [               g,      G               ],              
                     [               g,      G               ]       };      
    key <AC08> {     [               k,      K               ],              
                     [               k,      K               ]       };      
    key <AC09> {     [               l,      L               ],              
                     [               l,      L               ]       };      
    key <AC10> {     [     ocircumflex,      quotedbl        ],              
                     [       semicolon,      colon           ]       };      
    key <AC11> {     [         section,      exclam          ],              
                     [      quoteright,      quotedbl        ]       };      
                                                                             
// line 4                                                                    
    key <AB01> {     [               y,      Y               ],              
                     [               z,      Z               ]       };      
    key <AB02> {     [               x,      X               ],              
                     [               x,      X               ]       };      
    key <AB04> {     [               v,      V               ],              
                     [               v,      V               ]       };      
    key <AB05> {     [               b,      B               ],              
                     [               b,      B               ]       };      
    key <AB06> {     [               n,      N               ],              
                     [               n,      N               ]       };      
    key <AB07> {     [               m,      M               ],              
                     [               m,      M               ]       };      
    key <AB08> {     [           comma,      question        ],              
                     [           comma,      less            ]       };      
    key <AB09> {     [          period,      colon           ],              
                     [          period,      greater         ]       };      
    key <AB10> {     [           minus,      underscore      ],              
                     [           slash,      question        ]       };      
    key <BKSL> {     [          ncaron,      parenright      ],              
                     [       backslash,      bar             ]       };      
// End alphanumeric section                                                  
                                                                             
// begin modifier mappings                                                   
    modifier_map Shift  { Shift_L };                                         
    modifier_map Lock   { Caps_Lock };                                       
    modifier_map Control{ Control_L };                                       
    modifier_map Mod3   { Mode_switch };                                     
};                                                                           
                                                                             
-----------------------------------------------------------------------------

5. Sloven??ina a linuxov kernel

5.1. Kompilcia kernelu so slovenskou klvesnicou

Je ve??mi jednoduch zmeni?? rozlo??enie klves, s ktorm bude jadro v??ho
opera??nho systmu skompilovan. Ak pou??ijete program loadkeys s vo??bou
prkazovho riadku --mktable <keymapfile>, tento vm vygeneruje ??zdrojov
kd?? sboru <keymapfile>. Ten ulo??te do sboru drivers/char/defkeymap.c v
adresrovej ??truktre zdrojovho kdu Linuxu.
+---------------------------------------------------------------------------+
|sh# cd /usr/src/linux                                                      |
|sh# loadkeys --mktable sk-qwerty > drivers/char/defkeymap.c                |
|                                                                           |
+---------------------------------------------------------------------------+

Toto je aksi nhrada za /etc/sysconfig/console/default.kmap s tm rozdielom,
??e va??e rozlo??enie bude zaveden u?? od plnho ??tartu systmu. V prpade
problmov s initscriptami (alebo ??tarte zo zchrannej diskety) budete ma??
zaveden svoje rozlo??enie v ka??dom prpade. Pozor, nekompilujte si kernel
so slovenskm rozlo??enm len preto, ??e ??ijete na Slovensku! Na to sl??i
prkaz loadkeys. Pou??ite toto rie??enie, len ak bezpodmiene??ne potrebujete
slovensk rozlo??enie pri zadvan rootovho hesla alebo tak podobne.
-----------------------------------------------------------------------------

5.2. Diakritika v nzvoch sborov na FAT partcich

Ak chcete pristupova?? spod Linuxu na FAT/VFAT oddiely a ma?? prpadn
diakritiku v nzvoch sborov na takchto partcich, pri konfigurcii kernelu
(pred kompilovanm) zvo??te tieto nastavenia v ??asti Filesystems->Native
Language Support:

CONFIG_NLS_CODEPAGE_852 --- Codepage 852     
CONFIG_NLS_ISO8859_2 --- ISO 8859-2 (Latin 2)

Pri pripjan FAT/VFAT m??ete potom uvies?? vo??bu codepage=852.

Vo??ba codepage nastavuje kdov strnku pre prevod znakov krtkych mien na
sborovch systmoch FAT a VFAT. Implicitne m codepage hodnotu 437.
-----------------------------------------------------------------------------

6. Posloven??ovanie konkrtnych aplikci

??m ??alej, tm viac programov obsahuje bezproblmov podporu jazykov inch
ako angli??tina. Napriek tomu je e??te pr balkov, ktor bu?? pou??vaj
vlastn rozlo??enia klves, alebo je treba nastavi?? nejak tie fonty ??i
premenn. V tejto kapitole si pop??eme tie aplikcie, v ktorch je pre
rozbehanie sloven??iny po nai??talovan nutn urobi?? viac ako export LANG=
sk.

Ak chcete naozaj plnohodnotne vyu??va?? podporu nrodnch nastaven, v??dy
sa uistite, ??e program, ktor pou??vate (alebo cel distribcia), nie je
star?? ako 6 - 12 mesiacov. Je toti?? mo??n, ??e autori pridali tto
podporu len v nov??ch verzich.

Niektor z nasledovnch popisov nie s pvodn a niektor nemusia by?? ani
odsk??an. Preto je pri ka??dom uveden autor a jeho adresa a prpadn
zdroj, z ktorho sa nvod dostal do Slovak-HOWTO.
-----------------------------------------------------------------------------

6.1. Bash

Vi?? Readline.

Jn 'judas' Tomka, <judas@linux.sk>

Bash mva nepravidelne problm pri zmene premennej LC_CTYPE a zvykne sa
sta??, ??e znaky s diakritikou sa nevypisuj napriek sprvnemu nastaveniu
tejto premennej. Zatia?? sa mi nepodarilo zisti??, kde je chyba, lebo
naprklad Vim spusten z takhoto Bashu funguje sprvne... Zatia?? to rie??im
prkazom
+---------------------------------------------------------------------------+
|bash$ exec bash                                                            |
|                                                                           |
+---------------------------------------------------------------------------+

Aktulny shell sa nahrad novm, ktor u?? premenn LC_CTYPE pochop sprvne
a je u?? mo??n zadva?? aj znaky s diakritikou.
-----------------------------------------------------------------------------

6.2. Joe

Jn Ondrej (SAL), <ondrejj@salstar.shadow.sk>

Ak chcete pou??va?? nrodn prostredie, potrebujete ma?? nain??talovan
slovensk klvesnicu, slovensk font a navy??e muste povoli?? zobrazovanie
znakov s ASCII kdom 128-255 tak, ako s (as is). To m??ete spravi??
zmazanm medzery pred vo??bou -asis v konfigura??nom sbore joerc. Naj??
astej??ie ho njdete v adresri /usr/lib/joe/, v Debiane je v adresri /etc/.
??al??ou mo??nos??ou je pridanie parametra -asis pri sp????an programu.
-----------------------------------------------------------------------------

6.3. Lynx

Jn 'judas' Tomka, <judas@linux.sk>

V konfigurcii Lynxu sa lokalizcie tkaj hlavne tieto nastavenia:

*Display character set (CHARACTER_SET) --- kdovanie znakov na vstupe.
    Toto hovor o tom, do akej znakovej sady sa bud prevdza?? znaky pred
    zobrazenm na va??ej obrazovke. Ak mte ??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 informciu o svojom kdovan a
    nastavenie Raw 8-bit je vypnut. HTTP ??tandardom je ISO-8859-1 tak??e
    tak. V????inou maj dokumenty s inm kdovanm ako ISO-8859-1 informciu
    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 sbory s kdovanm Latin 2, nastavte si tto premenn.
    Mo??no ju nastavi?? len v sbore /etc/lynx.cfg (teda nie pre ka??dho
    u??vate??a zvl????).
   
*Raw 8-bit --- s tmto sa ve??mi trpi?? nemuste, len v prpade, ??e sa
    slovensk znaky nezobrazuj sprvne, sa v??dy uistite, ??e to mte
    zapnut (klvesovou skratkou @).
   

Konfigura??n sbor /etc/lynx.cfg upravte, aby obsahoval minimlne prv
riadok z
CHARACTER_SET:iso-8859-2                                                     
ASSUME_CHARSET:iso-8859-2                                                    
                                                                             

...alebo, pre u??vate??sk konfigura??n sbor ~/.lynxrc:
character_set=Eastern European (ISO-8859-2)                                  
                                                                             
-----------------------------------------------------------------------------

6.4. Mandrake 8

Vi?? RPM4.

Jn 'judas' Tomka, <judas@linux.sk>
-----------------------------------------------------------------------------

6.4.1. NLSPATH

Ak in??talujete aplikcie, ktorch sbory s prelo??enmi hlseniami (*.mo) sa
po in??talcii nenachdzaj v adresrovej ??truktre pod /usr/share/locale/,
odstr??te zo sboru /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 vm to funguje aj s ??ou, zabudnite na
m??a.

V prpade, ??e nem??ete meni?? /etc/profile, vlo??te si do svojho ~/.profile
riadok
unset NLSPATH                                                                
                                                                             
-----------------------------------------------------------------------------

6.4.2. SYSFONTACM

Pre sprvnu funkciu fontov je nutn okrem LC_CTYPE a SYSFONT nastavi?? aj
premenn SYSFONTACM v sbore /etc/sysconfig/i18n. No ak mte vlastn ??vate
??sk sbor ~/.i18n, globlny sa nena??ta a premenn SYSFONTACM sa
nenastav. Preto v??dy vlo??te do svojho u??vate??skho sboru riadok:
SYSFONTACM=iso02                                                             
                                                                             

Na vine je skript /etc/profile.d/lang.sh, preto??e ten po??le na terminl
Escape sekvenciu zavedenia u??vate??skho fontu len v prpade, ??e je
nastaven premenn SYSFONTACM. Tak si ju nastavte, alebo si to nejako
opravte!
-----------------------------------------------------------------------------

6.5. Midnight Commander

Jn Ondrej (SAL), <ondrejj@salstar.shadow.sk>

Jeho lokalizcia je jednoduch, preto??e ju priamo podporuje. Klvesou F9
vyvolte 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 sprvne a bude ich mo??n
aj zadva?? z klvesnice. Ak sa pri vstupe do niektorch adresrov bude
zobrazova?? hl??ka ??Warning: Couldn't change to ...??, tak potrebujete
lokalizova?? kni??nicu readline (iba pre star??ie RedHat systmy).

Rm??eky v MC (judas). Ak pou??vate console-tools, pre sprvnu funkciu rm??
ekov v Midnight Commander a podobnch textovch aplikcich nastavte font s
application charset map. U m??a funguje jedine tto kombincia:
+---------------------------------------------------------------------------+
|sh$ consolechars --font lat2u-16 --acm iso02                               |
|                                                                           |
+---------------------------------------------------------------------------+
-----------------------------------------------------------------------------

6.6. Mutt

Jn 'judas' Tomka, <judas@linux.sk>

Miestnych nastaven sa tkaj v konfigura??nom sbore ~/.muttrc nasledovn
premenn:

*ascii_chars -- Ak je nastaven, Mutt pou??ije znaky ASCII pri zobrazovan
    vlken stromov pripojench sborov, namiesto znakov ASC. To odpor??am,
    ak mte nastaven star?? font bez podpory app-charset-map a namiesto ??
    iar a ??piek sa vm zobrazuj znaky s diakritikou, alebo tieto znaky
    blikaj ap.
   
*charset -- Znakov sada, ktor pou??va v?? terminl na zobrazovanie a
    vkladanie textovch dt. Nastavi?? na kd znakovej sady fontu, ktor mte
    nastaven na konzole alebo v XTerme, at??.
   
*send_charset --
   

-----------------------------------------------------------------------------
6.7. Readline

Jn 'judas' Tomka, <judas@linux.sk>

V sbore s globlnymi nastaveniami /etc/inputrc alebo vo svojom u??vate??
skom sbore ~/.inputrc je pre sprvnu interpretciu osembitovch znakov
nastavi?? tieto premenn:

*convert-meta --- Ak je nastaven na `on', Readline konvertuje znaky s
    nastavenm smym bitom na sekvenciu znakov ASCII odstrnenm smeho bitu
    a pridanm znaku Esc na za??iatok.
   
*input-meta --- Ak je nastaven na `on', Readline umo??n osembitov vstup
    (neodstrni smy bit z pre??tanch znakov) bez oh??adu na to, ??i to
    terminl podporuje. Meno meta-flag je synonymom pre tto premenn.
   
*output-meta --- Ak je nastaven na `on', Readline bude zobrazova?? znaky
    s nastavenm smym bitom priamo a nie ako escape sekvencie.
   

Tak??e, do jednho zo spomnanch sborov vlo??te takto nastavenia:
set convert-meta off                                                         
set input-meta on                                                            
set output-meta on                                                           
                                                                             
-----------------------------------------------------------------------------

6.8. RPM4

Jn 'judas' Tomka, <judas@linux.sk>

Tento mal skriptk ??doin??taluje?? slovensk preklady v??etkch aplikci,
ktor mte nain??talovan. M??u vm chba??, ak ste pri in??talcii opera??
nho systmu 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!
-----------------------------------------------------------------------------

6.9. Rxvt

Jn 'judas' Tomka, <judas@linux.sk>

Nprava toho, ??e Rxvt vypisuje m??tvy klves priamo a ne??ak na ??al??
znak, s ktorm by ho skombinoval, je otzka jednho argumentu pri
konfigurovan:
+---------------------------------------------------------------------------+
|sh$ ./configure --enable-xim                                               |
|sh$ make                                                                   |
|sh$ su -c'make install'                                                    |
|                                                                           |
+---------------------------------------------------------------------------+

Tmto sa Rxvt skompiluje s podporou pre XIM (X Input Method) protokol. Ten
umo????uje alternatvne metdy vstupu (napr. kinput2) a tie?? sprvne
nastavenia pre ??ud, ??o pou??vaj m??tve klvesy.
-----------------------------------------------------------------------------

6.10. Samba

Jn Ondrej (SAL), <ondrejj@salstar.shadow.sk>

Po nastaven lokalizcie dok??e automaticky prekdova?? znaky s diakritikou
z kdovania 852 na ISO-8859-2. Nastavuje sa to v konfigura??nom sbore /etc/
smb.conf pridanm nasledujcich riadkov do sekcie [global]:
character set = iso8859-2                                                    
client code page = 852                                                       
                                                                             
-----------------------------------------------------------------------------

7. Finti??ky so sloven??inou

7.1. Zadvanie slovenskch znakov vo Vim

[http://www.kotelna.sk/keso/unix/vim.html] http://www.kotelna.sk/keso/unix/
vim.html

Ak nem??ete, alebo nechcete pou??va?? rozlo??enie klves pre sloven??inu,
ale potrebujete zada?? pr na??ich znakov vo Vim, d sa to urobi?? pomocou
prkazu imap. Jeho formt je
        :imap {lhs} {rhs}                                                    
                                                                             

{lhs} je postupnos?? znakov, po ktorch zadan (v krtkom ??asovom intervale)
sa vyp??e {rhs}.

Pre sloven??inu by sa dali vyu??i?? imap defincie znakov typu
+---------------------------------------------------------------------------+
|:imap =a                                                                  |
|:imap +c ??                                                                |
|                                                                           |
+---------------------------------------------------------------------------+

Ako vidno, je to nie??o podobn ako compose sekvencie z kapitoly o klvesnici
na konzole. Po zadan tchto prkazov m??ete aj so ??tandardnm rozlo??enm
klves zadva?? vo vim znaky s diakritikou. Tu je kompletn zoznam imap
definci pre slovensk diakritiku. Ulo??te ho do sboru naprklad sk.vim a
vo Vim ho na??tate prkazom
+---------------------------------------------------------------------------+
|:source sk.vim                                                             |
|                                                                           |
+---------------------------------------------------------------------------+

imap =a                                                                     
imap =A                                                                     
imap +a                                                                     
imap +A                                                                     
imap +c ??                                                                   
imap +C ??                                                                   
imap +d ??                                                                   
imap +D ??                                                                   
imap =e                                                                     
imap +e ??                                                                   
imap =E                                                                     
imap +E ??                                                                   
imap =i                                                                     
imap =I                                                                     
imap =l ??                                                                   
imap =L ??                                                                   
imap +l ??                                                                   
imap +L ??                                                                   
imap +n ??                                                                   
imap +N ??                                                                   
imap =o                                                                     
imap =O                                                                     
imap +o                                                                     
imap +O                                                                     
imap "o                                                                     
imap "O                                                                     
imap =r ??                                                                   
imap =R ??                                                                   
imap +r ??                                                                   
imap +R ??                                                                   
imap +s ??                                                                   
imap +S ??                                                                   
imap +t ??                                                                   
imap +T ??                                                                   
imap =u                                                                     
imap =U                                                                     
imap +u ??                                                                   
imap +U ??                                                                   
imap "u                                                                     
imap "U                                                                     
imap =y                                                                     
imap =Y                                                                     
imap +z ??                                                                   
imap +Z ??                                                                   
                                                                             
-----------------------------------------------------------------------------

7.2. Odstrnenie alebo nahradenie diakritiky v textovch sboroch

7.2.1. sed

Jn 'judas' Tomka, <judas@linux.sk>

V prpade, ??e potrebujete z textovho sboru odstrni?? diakritick
znamienka, m??ete pou??i?? program sed, pomocou ktorho nahradte vskyt
znaku s diakritikou jeho ekvivalentom bez nej.

Ak chcete odstrni?? diakritiku plne, muste nahradi?? vskyt v??etkch
znakov s diakritikou. Ak ale chcete len to, aby sa sbor zobrazoval sprvne
pri prezeran bez zavedenho fontu latin 2, sta?? nahradi?? len tie znaky,
ktor sa nezobrazuj sprvne pre ??tandardn font (spravidla latin 1).

Toto je prkaz, ktor mo??no pou??i?? pri vytvran verzie sboru plne bez
diakritiky:
sed -e "s::a:g" -e "s::A:g" -e "s::a:g" -e "s::A:g" \                    
    -e "s:??:c:g" -e "s:??:C:g" -e "s:??:d:g" -e "s:??:D:g" \                
    -e "s::e:g" -e "s::E:g" -e "s:??:e:g" -e "s:??:E:g" \                  
    -e "s::i:g" -e "s::I:g" -e "s:??:l:g" -e "s:??:L:g" \                  
    -e "s:??:l:g" -e "s:??:L:g" -e "s:??:n:g" -e "s:??:N:g" \                
    -e "s::o:g" -e "s::O:g" -e "s::o:g" -e "s::O:g" \                    
    -e "s::o:g" -e "s::O:g" -e "s:??:r:g" -e "s:??:R:g" \                  
    -e "s:??:r:g" -e "s:??:R:g" -e "s:??:s:g" -e "s:??:S:g" \                
    -e "s:??:t:g" -e "s:??:T:g" -e "s::u:g" -e "s::U:g" \                  
    -e "s:??:u:g" -e "s:??:U:g" -e "s::u:g" -e "s::U:g" \                  
    -e "s::y:g" -e "s::Y:g" -e "s:??:z:g" -e "s:??:Z:g" \                  
    "Slovak-HOWTO.sgml" > "Slovak-HOWTO-nodiac.sgml"                         
                                                                             
-----------------------------------------------------------------------------

7.2.2. cstocs

Bra??o Katreniak

Ke?? sa zmie??ujete o tom, ako sa d odstrni?? sloven??ina z dokumentu, zd
sa mi vhodn spomen?? aj program cstocs. Je to mil utilitka ??tandardne
dodvan s TeXom. Umo????uje konverziu sborov prakticky v??etkch mo??nch
kdovch strnok medzi sebou navzjom, pri??om jedna z mo??nost je aj
odstrnenie diakritiky. Pri??om sa mi to zd pohodlnej??ie ako sed.
-----------------------------------------------------------------------------

7.2.3. recode

Jn 'judas' Tomka, <judas@linux.sk>

Existuje aj program recode, ktor pravdepodobne tie?? sl??i na zmeny v
kdovan sborov. Ur??ite ho pou??ijete na tento cie??, ak sa predtm nestane
niektor z nasledujcich vec:

 1. Prdete o o??i pri ??tan man strnky, info manulu a v??etkho ??o je o
    tomto -- inak ur??ite u??ito??nom programe -- popsan.
   
 2. Prdete o nervy pri sk??an v??etkch mo??nch kombinci parametrov,
    volieb ??i argumentov pre tento nesmierne u??ito??n program.
   
 3. Prdete o po??ta??, ke????e ho vyhodte z okna po dvoch t??d??och
    psychickho utrpenia, ktor za??ijete pri pokusoch s tmto extrmne
    u??ito??nm programom.
   

Pod??a v??etkho by mal sta??i?? nasledovn prkaz:
+---------------------------------------------------------------------------+
|recode l2 subor.txt                                                        |
|                                                                           |
+---------------------------------------------------------------------------+
ale zd sa, ??e to sta??i?? nebude. Latka na titul ??Linuxov Guru?? sa
posunula do zvratnch v??ok, preto??e -- aby ste sa stali jeho nosite??om
-- muste vedie?? pomocou tohto programu previes?? dokument v latin2 na
latin1 alebo dokonca ASCII (a to u?? je pekn Saigon...)
