Slovak-HOWTO J�n 'judas' Tomka verzia 4 (Blanka) 16. febru�r 2002 Tento dokument poskytuje inform�cie t�kaj�ce sa problematiky miestnych nastaven� v prostred� opera??n�ch syst�mov GNU/Linux s oh??adom na potreby slovensk�ho u??�vate??a. ----------------------------------------------------------------------------- Obsah 1. �vodn� inform�cie 1.1. Licencia 1.2. Aktu�lna verzia a prispievanie 1.3. Osoby a obsadenie 2. Miestne nastavenia 2.1. Princ�py miestnych nastaven� 2.2. Miestne nastavenia pre Slovensko 2.3. Pr�klady miestnych nastaven� 3. Nastavenia konzoly 3.1. Sloven??ina na v�stupe textovej konzoly 3.2. Slovensk� kl�vesnica na textovej konzole 3.3. Zhrnutie nastaven� konzoly 4. Nastavenia X Window Systemu 4.1. Slovensk� fonty v X Window Systeme 4.2. Slovensk� kl�vesnica v X Window Systeme 4.3. Slovensk� my?? v X Window Systeme 4.4. Pr�klady 5. Sloven??ina a linuxov� kernel 5.1. Kompil�cia kernelu so slovenskou kl�vesnicou 5.2. Diakritika v n�zvoch s�borov na FAT part�ci�ch 6. Posloven??ovanie konkr�tnych aplik�ci� 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. Zad�vanie slovensk�ch znakov vo Vim 7.2. Odstr�nenie alebo nahradenie diakritiky v textov�ch s�boroch 1. �vodn� inform�cie 1.1. Licencia �no, m�??ete ??�ta?? tento dokument, a to aj na komer??n� u??ely! Autori nenes� zodpovednos?? za materi�lnu ??i psychick� ujmu sp�soben� ?? itate??ovi, jeho rodinn�m pr�slu??n�kom, dom�cim a hospod�rskym zvierat�m, pr�padne po??�ta??ov�mu zariadeniu. Toto je ??free?? dokument --- m�??ete ho ??�ri?? a/alebo modifikova?? v s�lade s podmienkami licencie GNU Free Documentation Licence, ktorej znenie n�jdete na adrese [http://www.gnu.org/licenses/fdl.html] http://www.gnu.org/ licenses/fdl.html. Autorom p�vodn�ho Slovak-HOWTO je J�n Ondrej (SAL). Tento dokument z neho obsahuje: n�zov a n�vody pre Joe, MC a Sambu. V??etko bolo ukradnut� so s�hlasom autora. ----------------------------------------------------------------------------- 1.2. Aktu�lna verzia a prispievanie Ak n�jdete v tomto s�bore nie??o, ??o je nezl�??ite??n� s va??im linuxov�m presved??en�m, nap�??te najsk�r do diskusie linux, potom sk-i18n, dajte pr�spevok na www.linux.sk a poohov�rajte ma na #sklug. V pr�pade, ??e v�s to neprejde, skontrolujte, ??i m�te aktu�lnu verziu a, samozrejme, a?? nakoniec, dajte mi vedie??. Adresy s�: ��*�Aktu�lna 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 t�to adresu sa tie?? obracajte, ak m�te nie??o, ??o by nemalo ch�ba?? v Slovak-HOWTO. Nad�cia Pom�?? a skonaj prispela na dop�sanie ??asti o kl�vesnici v iXoch sama sebe ??iastkou 500�000,-�Sk, v telev�zii Pom�?? a skonaj i v rovnomennom ??asopise boli zverejnen� inzer�ty, politick� strana PAS nekompromisne trv� na kompromise a v??etci pij� miner�lku Pom�?? a skonaj. Tigre, nosoro??ce a l�??ne kon�ky boli pokrsten�, a predsa sa s kapitolou o kl�vesnici v iXoch ni ?? nedeje. Mimochodom, sme naj??�tanej??ie Slovak-HOWTO na svete! Pri prispievan� sa sk�ste riadi?? nasledovn�mi pravidlami: ��*�Pre t�ch, ktor� maj� v�??ny z�ujem podie??a?? sa na p�san� Slovak-HOWTO, je mo??n� CVS pr�stup priamo k zdrojov�m k�dom dokumentu na serveri cvs.linuxdoc.org v adres�ri /cvsroot/LDP/howto/docbook/Slovak-HOWTO/. Bli????ie inform�cie o z�skan� CVS konta a webovskom rozhran� k CVS serveru n�jdete v LDP Autor Guide. ��*�Opravy robte v??dy vo form�te SGML (DTD DocBook, verzia 4.0), ktor� je prim�rnym form�tom pri tvorbe tohto dokumentu. Je tie?? mo??n� posiela?? ??ist� text. Pr�spevky p�??te, pokia?? mo??no, s diakritikou v norme ISO-8859-2. ��*�Ak je to nie??o v�????ie, dajte mi najsk�r vedie??, ??o chyst�te, preto??e je mo??n�, ??e u?? na tom niekto mak� a teda bu?? na to zabudnete, alebo to sk�site dorobi?? s danou osobou. (Vzh??adom na to, ??e zatia?? sa do tohto dokumentu dostalo asi 20 riadkov cudzieho textu, zd� sa mi predch�dzaj�ca veta maxim�lne smie??na. Ha-ha, zasmial som sa...) ��*�Va??e meno a adresa bud� automaticky zverejnen� spolu s va??im pr�spevkom. Ak si to ne??el�te, mus�te o to v�slovne po??iada??. Takisto, autor pr�spevku u?? jeho zaslan�m implicitne s�hlas� s aplik�ciou 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�.?? Mus�me v??ak zobra?? do �vahy, ??e v ??ech�ch je vy????ia ??ivotn� �rove?? a oni a?? to??ko srandy nepotrebuj�... ----------------------------------------------------------------------------- 1.3. Osoby a obsadenie Men� autorov n�vodov na lokaliz�ciu konkr�tnych aplik�ci� sa nach�dzaj� priamo v kapitole Posloven??ovanie konkr�tnych aplik�ci�, pr�padne Finti??ky so sloven??inou. ��*�J�n 'judas' Tomka -- Zodpovedn� ved�ci. ��*�??ubom�r 'salo' Sedl�??ik -- ksh/csh/tcsh, grammar bugfixes. ----------------------------------------------------------------------------- 2. Miestne nastavenia 2.1. Princ�py miestnych nastaven� Podpora miestnych nastaven� je dnes mimoriadne d�le??it�m faktorom, ktor� charakterizuje jednotliv� opera??n� syst�my. ??asy, ke?? boli ??udia ??tastn�, ??e to nie??o p�??e, s� nen�vratne pre?? a pou??�vatelia vy??aduj� podporu svojich miestnych nastaven�. V GNU syst�moch je t�to podpora implementovan� priamo do ??tandardnej kni??nice jazyka C -- GNU libc. T�to podpora je navrhnut� tak, aby zoh??ad??ovala v??etky po??iadavky kladen� na nastavenia pre ak�ko??vek krajinu a ak�ko??vek jazyk. ----------------------------------------------------------------------------- 2.1.1. Ciele a prostriedky R�zne krajiny a kult�ry maj� odli??n� pravidl� komunik�cie. Tieto pravidl� m�??u by?? mal�ho rozsahu, napr. form�t d�tumu a ??asu, a?? po ve??mi koplexn� ako je jazyk, ktor�m hovoria. Internacionaliz�cia softv�ru znamen� programova?? ho tak, aby bol schopn� pracova?? s pou??ivate??ov�mi miestnymi nastaveniami. V ISO C pracuje internacionaliz�cia v zmysle locales. Ka??d� locale (miestne nastavenia) ??pecifikuje skupinu pravidiel, jedno pravidlo pre ka??d� u??el. U??�vate?? si zvol� skupinu pravidiel ??pecifikovan�m locale (pomocou syst�mov�ch premenn�ch). V??etky programy dedia nastaven� locale v r�mci ich prostredia. Pod podmienkou, ??e programy s� nap�san� tak, ??e akceptuj� nastaven� locales, m�??u sa riadi?? pravidlami, ktor� uprednost??uje pou??�vate??. ----------------------------------------------------------------------------- 2.1.2. Kateg�rie a ich funkcie T�to ??as?? popisuje jednotliv� premenn�, ktor� ovplyv??uj� miestne nastavenia a ktor�mi sa riadia aj funkcie kni??nice GNU libc. Nastavenie premennej prostredia sa rob� pomocou pr�kazu shellu +---------------------------------------------------------------------------+ |bash$ export LC_PREMENNA=sk | | | |tcsh$ setenv LC_PREMENNA sk | | | +---------------------------------------------------------------------------+ LC_PREMENNA je jedna z nasleduj�cich: ��*�LC_COLLATE --- Triedenie re??azcov. Nastaven�m tejto premennej mo??no prin�ti?? aplik�cie, napr. sort, ls a in�, aby pri porovn�van� re??azcov brali do �vahy miestne rozlo??enie jednotliv�ch p�smen v abecede. Sloven ??ina m� napr�klad hne?? nieko??ko znakov, ktor� by pri trieden� pod??a ??�selnej hodnoty znaku sp�sobovali probl�my. Slovensk� nastavenia triedenia povedia funkciam strcoll a strxfrm, ??e napr�klad ch je jedno p�smeno a nasleduje hne?? za h a nie za c, ??e ??irok� � nasleduje za dlh�m � a to zase za oby??ajn�m a. Sk�ste si to na pr�kaze sort. Zadajte p�smen� cc ch hh, potom zme??te LC_COLLATE pr�kazom +---------------------------------------------------------------+ |bash$ export LC_COLLATE=sk | | | |tcsh$ setenv LC_COLLATE sk | | | +---------------------------------------------------------------+ Sk�ste to so sort znovu a porovnajte v�sledok... ��*�LC_CTYPE --- Klasifik�cia a prevod znakov, multibyte. Spr�vne nastavenie tejto premennej je nutn� pre korektn� rozli??ovanie znakov abecedy jednotliv�ch jazykov, ur??enie ??�slic, tzv. bielych znakov, prevod mal�ch p�smen na ve??k�, at??. Najvhodnej??ie je t�to premenn� nenastavova?? a t�m umo??ni??, aby bola jej hodnota prebrat� od premenn�ch LC_ALL alebo LANG (vi?? ??alej). Ak ale nechcete pou??�va?? slovensk� nastavenia, len ma?? spr�vne zobrazen� slovensk� fonty a funk?? n� slovensk� kl�vesnicu na konzole aj pod iXami, nastavte iba t�to premenn�. Varovanie V??dy si bu??te stopercentne ist�, ??e m�te t�to premenn� nastaven� (bu?? cez LC_ALL, LANG alebo priamo), lebo inak nem� zmysel ??�ta?? ??alej! Ono ?? klasifik�cia a prevod znakov?? neznie nejako l�kavo, ale vedzte, ??e je to sakramentsky d�le??it� pre ??ivot slovensk�ch p�smeniek vo va??om Linuxe! ��*�LC_MONETARY, LC_NUMERIC --- Form�t pe??a??n�ch a ??�seln�ch hodn�t. Umo????uje meni?? skupinu nastaven�, ktor� sa pou??ij� pri form�tovan� pe??a??n�ch hodn�t alebo v??etk�ch ostatn�ch ??�seln�ch hodn�t. S� to desatinn� ??iarka, odde??ova?? tis�cov, zoskupovanie ??�slic, znamienka pre kladn� a zaporn� hodnoty, at??. ��*�LC_TIME --- Form�tovanie d�tumu a ??asu. Nastavenia odde??ova??ov medzi hodinami, min�tami a sekundami, n�zvy dn�, poradie rok, mesiac a de?? v d�tume, ... ��*�LC_MESSAGES --- V�ber jazyka, pou??it�ho u??�vate??sk�m rozhran�m na preklad hl�??ok programov. Toto je presne t� premenn�, ktor� prin�ti aplik�cie hovori?? po slovensky. Vi?? ??al??ie kapitoly. S prekladom hl�sen� programov, hlavne s umiestnen�m s�borov s prelo??en�mi re??azcami, s�vis� premenn� NLSPATH. Mala by obsahova?? dvojbodkami oddelen� zoznam adres�rov, v ktor�ch sa bud� h??ada?? .mo s�bory pre miestne nastavenia dan� premennou LC_MESSAGES. Premenn� NLSPATH je v??ak potrebn� nastavova?? len vo v�nimo??n�ch pr�padoch, preto??e aplik�cie h??adaj� preklady svojich hl�sen� v ??tandardn�ch adres�roch pre tieto s�bory. Okrem t�chto premenn�ch bolo implementovan�ch nieko??ko ??al??�ch, ktor� zatia?? nie s� zdokumentovan� (The GNU C Library Reference Manual). Ich v�znam je zrejm� z n�zvu, tak??e uvediem aj svoju dedukciu. ��*�LC_PAPER --- Form�t papiera. V na??ich zemepisn�ch ??�rkach sa napr�klad pou??�va form�t A4, v Amerike je to Letter, at??. Pozor, t�to premenn� neobsahuje priamo n�zov form�tu, ale (tak, ako v??etky LC_ premenn�), skratku miestneho nastavenia, teda u n�s to bude sk. Ak by sme chceli pou??�va?? form�t Letter, museli by sme t�to premenn� nastavi?? na k�d miestneho nastavenia niektorej z kraj�n, ktor� pou??�va tak�to form�t, napr�klad us. V tomto pr�pade je nutn� nain??talova?? bal�k s miestnymi nastaveniami pre t�to krajinu (locales-us). ��*�LC_NAME --- Form�t mena a priezviska. U n�s 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 n�s, ale p�??u sa v opa??nom porad�. O tom je t�to premenn�. Asi... ��*�LC_ADDRESS --- Sp�sob z�pisu adresy. Poradie ulice a popisn�ho ??�sla domu, ZIP k�d, PS?? apod. ��*�LC_TELEPHONE --- Form�t telef�nnych a faxov�ch ??�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 nap�san� v USA bude pravdepodobne po??�ta?? s gal�nmi vody, ale ak je spr�vne nap�san�, s premennou LC_MEASUREMENT nastavenou na ??sk?? bude zobrazova?? litre v spr�vnom pomere. To ist� plat� napr�klad pre prevod teploty vo Fahrenheitovej stupnici na stupne Celsia. ��*�LC_IDENTIFICATION --- Az ap�d, tak toto neviem. Rodn� ??�slo? ??�slo soci�lneho poistenia? ??�slo top�nok? ----------------------------------------------------------------------------- 2.1.3. ??al??ie premenn� ��*�LC_ALL --- Ak je t�to premenn� nastaven�, pou??ije sa jej hodnota pre v??etky vy????ie spomenut� skupiny locales, bez oh??adu na hodnotu pr�slu??n�ch premenn�ch. ��*�LANG --- Hodnota tejto premennej sa pou??ije pre tie skupiny locales, ktor� nemaj� pr�slu??n� premenn� nastaven�. ��*�LANGUAGE --- Alternat�vne miestne nastavenia. T�to premenn� m�??e obsahova?? usporiadan� zoznam k�dov miestnych nastaven� oddelen�ch dvojbodkami. S�bory s prekladmi hl�??ok programov sa bud� h??ada?? v porad�, v akom s� ur??en� v tomto zozname. Ak sa nepodar� n�js?? s�bor s prelo??en�mi hl�??kami programu v jednom jazyku, pou??ije sa s�bor pre nasleduj�ci jazyk v zozname LANGUAGE. Navy??e, ak sa s�bor pre prv� jazyk aj n�jde, ale niektor� re??azec z neho nie je prelo??en�, nepou??ije sa p�vodn� (anglick�), ale najsk�r sa pok�si n�js?? preklad dan�ho re??azca v s�bore pre ??al??� jazyk v zozname LANGUAGE. To je v�hodn� pre ??ud�, ktor� okrem svojho jazyka ovl�daj� nejak� in� lep??ie ako angli??tinu, v ktorej s� zvy??ajne programy origin�lne nap�san�. Napr�klad Slov�k by mohol ma?? nastaven� LANGUAGE="sk:cz" a Szolv�k z Kom�rom zase LANGUAGE= "hu:sk". V�straha Premenn� LANGUAGE ovplyv??uje len premenn� LC_MESSAGES! Pre spr�vnu funkciu je nutn� nastavi?? aj ostatn� premenn� (minim�lne LC_CTYPE). ��*�LINGUAS --- T�to premenn� nem� ??peci�lny v�znam z h??adiska GNU libc, ale zvykne sa pou??�va?? pri in??tal�cii programov (zo zdroj�kov). Medzerami oddelen� zoznam k�dov miestnych nastaven� ur??uje jazyky, pre ktor� si u??�vate?? ??el� in??talova?? preklady re??azcov aplik�cie. Pr�klad: +---------------------------------------------------------------+ |bash$ export LINGUAS="sk cz" | |bash$ ./configure | |bash$ make install | | | +---------------------------------------------------------------+ Tieto pr�kazy skompiluj� a nain??taluj� aplik�ciu s podporou sloven??iny a ??e??tiny. In??tala??n� skripty obvykle tie?? kontroluj� obsah premenn�ch LANG a LC_ALL, tieto ale m�??u obsahova?? len jeden k�d miestnych nastaven�. ��*�RPM_INSTALL_LANG --- ??astej??ie ako zo zdrojov�ho k�du sa aplik�cie in??taluj� z r�znych bal�kov (rpm, deb, ...). Kv�li ??etreniu miestom na disku (a logike -- m�lokto ovl�da tridsa?? re??�) je v RPM4 mo??n� ur?? i?? jazyk, ktor�ho prelo??en� hl�??ky sa bud� in??talova??. Preto odpor� ??am do s�boru .bash_profile (.login) u??�vate??a, ktor� in??taluje bal�ky (root), vlo??i?? nasledovn� riadok: +---------------------------------------------------------------+ |bash$ export RPM_INSTALL_LANG=sk | | | |tcsh$ setenv RPM_INSTALL_LANG "sk" | | | +---------------------------------------------------------------+ Ak sa v�m nebodaj stane tak� vec, ??e nain??talujete cel� opera??n� syst�m a a?? potom sa dozviete o tejto premennej (tak, ako sa to stalo aj mne), sk�ste skript uveden� v ??asti RPM4. ----------------------------------------------------------------------------- 2.1.4. Priorita premenn�ch Miestne nastavenia sa ur??uj� zo spomenut�ch premenn�ch, 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 nastav�te LC_ALL, jednotliv� premenn� LC_ * sa u?? neber� do �vahy. Na druhej strane, ak m�te napr�klad nastaven� len niektor� z LC_*, ostatn� sa nastavia na hodnotu premennej LANG. ----------------------------------------------------------------------------- 2.1.5. K�dy miestnych nastaven� Premenn�, ktor� ovplyv??uj� miestne nastavenia, sa nap????aj� k�dmi miestnych nastaven�. K�dy miestnych nastaven� s� re??azce, ktor�ch form�t sa riadi nieko??k�mi pravidlami. V??eobecn� tvar je: jazyk[_�zemie[.k�dovanie]][@modifik�tor] 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, k�dovanie je ISO-8859-2 pre v??etky stredoeur�pske jazyky (je mo??ne pou??i?? nieko??ko form�tov na zadanie k�dovania) a modifik�tor slu??i na povolenie alebo zak�zanie niektor�ch funkci�. Tie s� dan� v defin�ciach miestnych nastaven�. Napr�klad, pre Ve??k� Brit�niu je modifik�torom 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?? k�dovanie iso-8859-15, ktor� definuje znaky euro a cent. Pr�klady k�dov miestnych nastaven� (ka??d� z t�chto re??azcov je mo??n� priradi?? premenn�m miestnych nastaven�, ale naj??astej??ie sa pou??�vaj� len dvojp�smenkov� skratky v poslednom st??pci): Tabu??ka 1. Pr�klady k�dov 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� syst�mov� premenn� nastaven� a programy ich pou??�vaj� do doby, k�m sa inicializuje lokaliz�cia. Tvrd�m, ??e sa pou??ij� obe, preto??e moment�lne s� toto??n�, ale v bud�cnosti sa m�??u v tejto oblasti ??tandardy ISO C a POSIX odli??ova?? a potom to bude z�le??a?? na konfigur�cii syst�mu. 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?? bal�k s podporou miestnych nastaven�, ktor� m� n�zov locales a tie?? bal�k s podporou priamo pre Slovensko --- locales-sk . Ak m�te z�ujem pou??�va?? aj podporu pre nejak� in� jazyk (na na??om �zem� je aktu�lna najm� ??e??tina a ma??ar??ina), mus�te tie?? nain??talova?? bal�ky pre tieto jazyky. V druhom rade si mus�te nain??talova?? bal�ky s podporou miestnych nastaven� a priamo sloven??iny (s� to locales a locales-sk). V ??al??om kroku si nezabudnite nain??talova?? bal�ky locales a locales-sk. Takisto, pre ka??d� jazyk, ktor� sa chyst�te pou??�va??, si nain??talujte bal�k s podporou miestnych nastaven�. V pr�pade probl�mov s miestnymi nastaveniami sa dr??te predch�dzaj�cich troch krokov. ----------------------------------------------------------------------------- 2.2.1. S�bory s miestnymi nastaveniami Prejdime sa teraz trochu po na??ich adres�roch. Prv� nav??t�vime /usr/share/ locale/sk. Na prv� poh??ad vidno, ??e adres�r a s�bory v tomto adres�ri maj� men� toto??n� s premenn�mi, pomocou ktor�ch sa nastavuj� jednotliv� kateg�rie miestnych nastaven�. Je to preto, lebo pr�ve z t�chto s�borov sa na??�taj� nastavenia, ke?? je dan� premenn� nastaven� na hodnotu sk. Okrem nich tu m�??e by?? e??te s�bor charset, ktor� obsahuje len jeden riadok s re??azcom iso-8859-2. Ten hovor�, ak� k�dovanie znakov sa m� pou??i?? pre dan� miestne nastavenia. V??etky s�bory v tomto adres�ri s� bin�rne d�ta a adres�r LC_MESSAGES obsahuje s�bory, ktor�ch men� s� toto??n� s n�zvami niektor�ch bal�kov nain??talovan�ch na va??om syst�me, s pr�ponou mo. S� to preklady re??azcov z jednotliv�ch aplik�ci�. O nich si povieme nesk�r. Teraz by sme mohli zisti??, ??o vlastne obsahuj� s�bory LC_*. Presu??me sa do adres�ra /usr/share/i18n/. Tu, v textovom s�bore sk_SK v podadres�ri locales/ sa kone??ne nach�dzaj� slovensk� miestne nastavenia v ?? itate??nej (a editovate??nej) forme. S�bory v tomto adres�ri maj� presne dan� ??trukt�ru, ktor� je pop�san� v manu�lovej str�nke locale(5). Pre be??n�ho pou??�vate??a nem� zmysel meni?? nastavenia v tomto s�bore, 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 s�bore, mus�te aktualizova?? s�bory v prvom spom�nanom adres�ri /usr/share/locales/sk / pr�kazom, ktor� �daje v s�bore sk_SK skompiluje a ulo??� do s�borov LC_COLLATE, LC_CTYPE, ... sh$ localedef -i sk_SK -f ISO-8859-2 sk_SK V podadres�ri /usr/share/i18n/charmaps/ sa nach�dzaj� s�bory s popismi jednotliv�ch k�dovani znakov. Pre Slovensko je aktu�lny ISO-8859-2 (??o je aj obsah spom�naneho s�boru charset). V adres�ri /usr/share/locale/ sa nach�dza s�bor locale.alias, ktor� definuje tzv. aliasy pre k�dy miestnych nastaven�. Pre spr�vnu funkciu slovensk�ch 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?? nezad�te k�dovanie 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 d�vajte bacha! Niektor� aplik�cie, ktor� v s�vislosti s miestnymi nastaveniami nevyu??�vaj� slu??by libc, toti?? na aliasy ka????� a zauj�maj� ich len prv� dva znaky nastaven�ch premenn�ch. A tak sa zo slovak stane sl, ??o je Slovinsko. Pozit�vne je, ??e pre sloven??inu m�??ete nastavi?? premenn� napr�klad na hodnotu skaderukaskadenoha. ----------------------------------------------------------------------------- 2.2.2. Konfigur�cia miestnych nastaven� Nastavenia internacionaliz�cie sa (v RedHat a Mandrake) nach�dzaj� v s�bore / etc/sysconfig/i18n. Je to ve??mi u??ito??n� s�bor, ktor� si r�chlo ob??�bite. Mo??no v ??om nastavi?? v??etko, ??o sa kedy t�kalo internacionaliz�cie, n�rodn�ch fontov a rozlo??en� kl�ves. Tento s�bor v??ak len definuje syst�mov� premenn� a zvykne sa vklada?? (source /etc/sysconfig/i18n) do inicializa??n�ch skriptov. Exportovanie premenn�ch (odovzdanie ostatn�m aplik�ci�m) 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). S�bor /etc/sysconfig/i18n definuje nastavenia pre cel� syst�m. Tieto sa pou??ij�, ak sa nen�jde s�bor s u??�vate??ov�mi nastaveniami. Ka??d� u??�vate ?? si m�??e ur??i?? svoje vlastn� nastavenia v s�bore .i18n v jeho domovskom adres�ri. Nastavenia sa v??dy ??�taj� len z jedn�ho z t�chto s�borov, teda ak m� u??�vate?? svoj vlastn� s�bor ??/.i18n, nastavenia zo s�boru /etc/ sysconfig/i18n sa ignoruj�. U??�vate?? si m�??e zmeni?? nastavenia aj ru??ne, kedyko??vek sa mu zachce, nastaven�m premenn�ch prostredia LC_MESSAGES, LANG, at??. Vypn�?? nejak� nastavenie je mo??n� pr�kazom +---------------------------------------------------------------------------+ |sh$ unset LC_MESSAGES LANG | | | +---------------------------------------------------------------------------+ T�m sa zru??ia nastavenia dan�ch premenn�ch (a pou??ije sa ??tandardn� locale C alebo POSIX). Ak m�te napr�klad nastaven� premenn� LC_ALL=sk a LC_MESSAGES=cz, tak po pr�kaze unset LC_ALL nebudete ma?? hl�senia programov v angli??tine, ale ?? e??tine. Preto, ak chcete vypn�?? nejak� nastavenia, v??dy mus�te pr�kazom unset zru??i?? nastavenia v??etk�ch premenn�ch, ktor� m�??u ovplyv??ova?? dan� miestne nastavenia. Pozn�mka export/setenv � Neodpust�m si mal� pozn�mku k pr�kazu export. Je to vstavan� funkcia v??etk�ch shellov kompatibiln�ch s klasick�m sh (teda aj bash). Pre shelly typu tcsh je ekvivalentom pr�kaz setenv. Je d�le??it� uvedomi?? si, ??o presne tento pr�kaz rob� s premenn�mi. V dokument�cii k bashu sa hovor�, ??e export ozna??� premenn�, aby bola odovzdan� detsk�m (child) procesom v r�mci prostredia (environment). To znamen� asi to??ko, ??e ke?? spust�te napr. iXy z matersk�ho procesu bash, ktor� pri ??tarte exportoval premenn� LANG=sk, v??etky aplik�cie v prostred� X Window System bud� dedi?? toto nastavenie a teda (ak to sami podporuj�) bud� fungova?? po slovensky. Ak budete chcie?? spusti?? aplik�ciu bez slovensk�ch nastaven�, mus�te v xterme zada?? pr�kaz 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 aplik�cie spusten� priamo z tohto xtermu bud� fungova?? bez podpory sloven??iny. Trochu sa s t�m pohrajte. ----------------------------------------------------------------------------- 2.2.3. Nastavenie ??asovej z�ny S miestnymi nastaveniami �zko s�vis� aj nastavenie ??asovej z�ny. Vedel by som o tom rozpr�va?? 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 hardverov�m hodin�m. (Mimochodom, odpor�??am hardverov� hodiny nastaven� na greenwichsk� svetov� ??as, ??�m tie?? odpadaj� probl�my s prechodom medzi letn�m a zimn�m ??asom at??. ale o tom s� pop�san� in� s�bory.) Toto cel� je dos?? dobr� vec, hlavne ak mate pr�stup k po??�ta??u v inej ??asovej z�ne, ale chcete pracova?? s ?? asom v stredoeur�pskej z�ne. Do svojho s�boru .bash_profile (.login pre tcsh) vlo??te vy????ie uveden� riadok. ----------------------------------------------------------------------------- 2.3. Pr�klady miestnych nastaven� ��*�U??�vate?? je s�ce zo stredn�ho Slovenska, ale u?? ke?? s n�m bola jeho mama tehotn�, p�????ala mu do brucha kurzy angli??tiny. Nem� teda zmysel pou??�va?? slovensk� nastavenia, a?? na krajn� pr�pady, napr. slovensk� fonty v Gimpe. Darujte mu s�bor .i18n s nasledovn�m obsahom (aj na tak�to mal� on� potrebuje locales-sk): +---------------------------------------------------------------+ |LC_CTYPE=sk | | | +---------------------------------------------------------------+ ��*�U??�vate?? je norm�lny, m� r�d svoj materinsk� jazyk, ale netr�pi ho, ke ?? m� polovicu aplik�ci� 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 bl�zkeho 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 form�tovania d�tumu a ??asu v ??e??tine. Nikdy sa nesmie zabudn�?? na in??tal�ciu prekladov hl�??ok pre ma??ar??inu, ??e??tinu a sloven??inu z bal�kov, ktor� podporuj� premenn� LINGUAS. Treba ho tie?? presved??i??, ??e in??tal�cia 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 T�to kapitola by mala ??�tavou, pou??nou a z�rove?? z�bavnou formou pojedn�va?? o veciach medzi prstom a okom. Z�kladnou ot�zkou nech n�m je ?? Zmysel ??ivota, vesm�ru a v�bec.?? ----------------------------------------------------------------------------- 3.1. Sloven??ina na v�stupe textovej konzoly 3.1.1. Fonty Ke?? zobud�te o polnoci hocikoho, kto vo svojom ??ivote videl po??�ta?? a op�tate 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 manipul�ciu s nimi sa nach�dzaj� v bal�ku kbd. Po jeho nain??talovan� s� s�bory s fontami umiestnen� v adres�ri /usr/lib/kbd/ consolefonts/. Pre n�s s� d�le??it� najm� s�bory, ktor� maj� v mene iso02, lat2, latin2 alebo ??�slo 852. To nazna??uje, ??e ide o fonty s podporou ISO-8859-2 ( latin2), pr�padne DOS codepage 852, ??o s� ??tandardy aj pre slovensk� diakritiku. Pozor, p�vodn� bal�k sa vol� kbd, ale existuje jeho roz??�ren� verzia, ktor� sa objavuje v distrib�ci�ch -- console-tools. Rozdiely medzi nimi s� minim�lne, pre kbd budeme pou??�va?? pr�kaz setfont, pre console-tools zase consolechars. Taktie??, n�zvy dod�van�ch fontov sa trochu odli??uj�, tak??e budem uv�dza?? ekvivalenty pre oba bal�ky. ----------------------------------------------------------------------------- 3.1.2. Ako fonty funguj� Existuje nieko??ko s�borov�ch form�tov na ukladanie fontov, princ�p je v??ak rovnak� -- s�bor obsahuje 256 obr�zkov (glyphs), z ktor�ch v??etky maj� rovnak� rozmer (napr. 8x16 bodov -- ve??kos?? fontu) a ka??d� zobrazuje jeden znak. Aby n�m t�ch 256 obr�zkov bolo na nie??o dobr�ch, je treba font zo s�boru zavies?? do znakov�ho gener�tora videokarty. Na to sl�??i jeden z pr�kazov kbd: setfont meno-fontu console-tools: consolechars -f meno-fontu meno-fontu m�??e by?? absol�tna alebo relat�vna cesta k s�boru s fontom, alebo meno s�boru, pokia?? sa nach�dza v adres�ri /usr/lib/kbd/consolefonts/, ??i u?? s pr�ponou, alebo bez. Pre ??ah??ie pochopenie t�ch obr�zkov, sk�ste nahradi?? meno-fontu re??azcom t850 a sledujte v�sledok na v??etk�ch virtu�lnych konzol�ch. Nasp�?? k ??tandardn�mu fontu sa v??dy dostanete jedn�m z pr�kazov kbd: +---------------------------------------------------------------+ |sh$ setfont | | | +---------------------------------------------------------------+ console-tools: +---------------------------------------------------------------+ |sh$ consolechars -d | | | +---------------------------------------------------------------+ ??o sa presne deje? Program setfont/consolechars zavedie v??etk�ch 256 obr�zkov do znakov�ho gener�tora EGA/VGA karty. Od tohto momentu sa na v??etk�ch konzol�ch bude znak s ASCII k�dom napr. 65 vykreslova?? ako ??esdesiaty piaty obr�zok z na??eho s�boru s fontom. E??te raz pripom�nam a dvakr�t pod??iarkujem, ??e font je v??dy rovnak� pre v??etky virtu�lne konzoly, na ktor�ch zobrazuje znaky ten ist� znakov� gener�tor EGA/VGA karty. D�le??it� je uvedomi?? si, ??e interne ide naozaj len o obr�zky a tvar niektor�ho znaku vo fonte nem� ni?? spolo??n�ho s jeho ASCII k�dom. Ak by ste si sami vytvorili nejak� font (v dokument�cii ku kbd/console-tools m�te inform�cie o v??etk�ch form�toch), v ktorom by mal ten ??esdesiaty piaty obr�zok tvar p�smena z, po jeho natiahnut� sa v�m bude pri zadan� Alt-6-5, ?? o je ASCII k�d p�smena A, zobrazova?? znak z. Ale ak tento znak ulo??�te do s�boru, v tomto sa bude nach�dza?? bajt s hodnotou 65, teda p�smeno 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, n�s zauj�ma?? nemus� (pokia?? nevytv�rame 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 hl�pe znaky, ktor� so sloven??inou nemaj� ni?? spolo??n�. Slovensk� (ISO-8859-2) fonty, ktor� s� s�??as??ou bal�kov 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 pr�kaz 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 slovensk�ch znakov, probl�m v??ak nast�va pri aplik�ci�ch, ktor� vyu??�vaj� znaky na kreslenie r�m??ekov (napr. mc). ??o sa t�ka fontov iso02.* z bal�ka kbd, treba pri nich pou??i?? argument pr�kazu setfont -m latin2u.trans. Tak??e cel� pr�kaz na zavedenie niektor�ho z t�chto fontov je: kbd: +---------------------------------------------------------------+ |sh$ setfont iso02.16 -m latin2u.trans | | | +---------------------------------------------------------------+ console-tools: +---------------------------------------------------------------+ |sh$ consoletrans -f lat2u-16 -m iso02 | | | +---------------------------------------------------------------+ V s�bore latin2u.trans (iso02.acm) sa nach�dza tzv. Aplication-Charset Map ( ACM), ak�si prevodn� tabu??ka, ktor� obsahuje riadok pre ka??d� znak fontu a jeho podobu v k�dovan� UTF-8. ----------------------------------------------------------------------------- 3.1.4. Automatick� zav�dzanie 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 s�bor /etc/sysconfig/i18n a program (skript) /sbin/setsysfont. Ak �no, spust� setsysfont. Ten na??�ta / etc/sysinfo/i18n a pod??a premenn�ch definovan�ch v tomto s�bore pr�kazom consolechars alebo setfont zavedie font. Tak??e sta??� nastavi?? spr�vne premenn� v s�bore /etc/sysconfig/i18n a skript /sbin/setsysfont urob� v??etko za n�s. Tento skript mo??no spusti?? kedyko??vek chcete zavies?? font nastaven� ako ??tandardn� pre syst�m. Premenn� v s�bore /etc/sysinit/i18n s� (pou??�vajte len men� s�borov bez cesty a bez pr�pony!): kbd: SYSFONT=lat2a-16 console-tools: SYSFONT=lat2u-16 SYSFONTACM=iso02 Skript�k setsysfont obsahuj� oba bal�ky a kedyko??vek m�??ete zavies?? font nastaven� ako syst�mov� v s�bore /etc/sysinit/i18n jednoduch�m zadan�m +---------------------------------------------------------------------------+ |sh$ /sbin/setsysfont | | | +---------------------------------------------------------------------------+ Pod??a toho, ??o sme si hovorili o tom, ??e pre v??etky virtu�lne konzoly m�??e by?? nastaven� len jeden spolo??n� font, nem� ve??k� zmysel zav�dza?? nastavovanie fontu zvl�???? pre ka??d�ho u??�vate??a. S t�m s�vis� aj fakt, ??e nastavenie fontu sa vz??ahuje k dan�mu po??�ta??u, pri ktorom pr�ve sed�te a nie k tomu, ku ktor�mu ste pripojen� napr. cez ssh. Predsa len si viem predstavi?? pr�pad, ke?? niektor� z viacer�ch pou??�vate?? ov jedn�ho po??�ta??a potrebuje odli??n� font. V tom pr�pade m�??e vlo??i?? pr�kaz na zav�dzanie fontov do svojich skriptov, ktor� vykon�va shell pri prihl�sen� a odhl�sen�. 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 ide�lne rie??enie, ale svoj �??el spln� (minim�lne po moment prv�ho odhl�senia). Trochu sa s t�m pozab�vajte, aby sa font (a rozlo??enie kl�ves) menilo len pri prvom prihl�sen� a poslednom odhl�sen�, tie?? setfont pod iXami nem� ve??mi zmysel a tak... V Tips-HOWTO je uveden� sp�sob, ako zisti??, na ko??k�ch virtu�lnych konzol�ch je e??te u??�vate?? prihl�sen�. In�??, aby bolo jasn�, toto v�m bude fungova?? len na lok�lnom stroji - zamyslite sa, pre??o asi setfont (aj loadkeys) nefunguje cez vzdialen� termin�l a ??i by ste z toho nie??o mali, keby to tak nebolo. Ak to s tak�mto rie??en�m mysl�te v�??ne, tak sk�r uva??ujte nad modifik�ciou skriptu /etc/profile.d/lang.sh, kde by sa kontroloval aj obsah u??�vate?? sk�ho s�boru ~/.i18n a pod??a toho by sa zaviedol skript, popis rozlo??enia kl�ves, pr�padne nejak� premenn�... ----------------------------------------------------------------------------- 3.2. Slovensk� kl�vesnica na textovej konzole Ke?? je slovensk� font na konzole rozbehan� a na??e n�rodn� znaky sa zobrazuj� spr�vne, m�me so sloven??inou probl�m ??�slo dva - ako tam tie znaky dosta??? Keby ste si chceli tento s�bor len pre??�ta?? bez potreby n�slednej nav??tevy psychiatra, sta??ilo by zavies?? nejak� font so slovenskou podporou. Ale ke????e ste uvedomel� linux�k�/�uvedomel� linux�?? ka, hne?? chcete do Slovak-HOWTO prispie?? a pomocou kl�vesnice p�sa?? slovensk� text. Na to potrebujete s tou kl�vesnicou nie??o urobi??. ----------------------------------------------------------------------------- 3.2.1. Popis rozlo??enia kl�ves (keymap) Adres�re /usr/lib/kbd/keymaps/i386/qwertz/ a qwerty/ obsahuj� po nain??talovan� bal�ka kbd/console-tools aj popisy slovensk�ho rozlo??enia kl�ves. Pre n�s s� zauj�mav� s�bory sk-prog-qwerty.map.gz sk-qwerty.map.gz sk-prog-qwertz.map.gz sk-qwertz.map.gz Tieto s�bory obsahuj� defin�cie rozlo??enia kl�ves pre slovensk� jazyk, pri?? om rozdiely medzi nimi s� v umiestnen� kl�ves Y a Z a po??te slovensk�ch znakov, ktor� pomocou nich mo??no nap�sa?? priamo (bez m??tvych kl�ves). Najviac sa na slovensk� p�sac� stroj podob� sk-qwertz, najmen??ie zmeny oproti americkej kl�vesnici s� zase v sk-prog-qwerty. S�bory v adres�ri /usr/lib/kbd/keymaps/i386/include/ obsahuj� popis z�kladn�ch rozlo??en� kl�ves (azerty , qwerty, qwertz ), pr�davn�ch kl�ves (keypad, windowkeys), pr�padne probl�mov�ch kl�ves ( delete, backspace, ctrl ). S�bory linux-*.inc.gz s� ??pecifick� pre linux (teda nie pre jazyk). S� to napr. k??�??e (F1-F12, kombinovan�m s Ctrl a Shift a?? po F48), Shift-PgUp a Shift -PgDown, at??. Keymapy *.inc.gz nepopisuj� kompletn� rozlo??enie kl�vesnice, ale len niektor�ch jej ??ast�. Vyu??�vaj� sa pri prip�jan� (include) zo s�borov *.map.gz, ??o je v�hodn� z d�vodu jednoduch??ej konfigur�cie kl�vesnice. Napr�klad zmenou jedn�ho riadku v s�bore s rozlo??en�m sk-qwerty m�??me dosta?? rozlo??enie qwertz, pr�padne (to asi vyu??ijete) jednoducho odstavi?? znaky euro a cent, ktor� (zatia???) nepotrebujeme a zbyto??ne n�m zaberaj� znaky E a C. Na zavedenie s�boru s popisom rozlo??enia kl�ves sl�??i nasledovn� pr�kaz: loadkeys nazov kde nazov m�??e by?? absol�tna alebo relat�vna cesta ku keymap s�boru, alebo meno s�boru, pokia?? sa nach�dza v adres�ri /usr/lib/kbd/keymaps/, ??i u?? s pr�ponou, alebo bez. ??tandardn� slovensk� popisy rozlo??enia kl�ves n�jdeme vo vy????ie spom�nan�ch *.map.gz s�boroch. Ak sa chcete vr�ti?? k ??tandardn�mu rozlo??eniu, pr�kaz +---------------------------------------------------------------------------+ |sh$ loadkeys -d | | | +---------------------------------------------------------------------------+ zavedie p�vodn�, ktor� je ulo??en� v s�bore defkeymap.map.gz niekde medzi ostatn�mi keymap s�bormi. Predt�m ale nikdy nezabudnite zmeni?? re??im slovenskej kl�vesnice na US znaky, tzn. 1 d�va 1 a nie + at??. Ak by ste predsa zabudli, je mo??n�, ??e kl�vesy, kde sa nach�dzali slovensk� znaky, nebud� fungova?? spr�vne (v skuto??nosti bud� fungova?? spr�vne, ale v�m sa to nebude p�??i??). Vtedy znovu zave??te predchadz�j�cu keymapu (na nefunk?? n� kl�vesy pou??ite AltGr - prav� Alt) a kl�vesou Pause/Break v??etko naprav�te. Potom m�??ete znova zavies?? defkeymap. Pokia?? sa v�m nep�??i ani jeden zo ??tandardn�ch keymap s�borov pre sloven?? inu, ??o je pravdepodobn� v??aka riadku include "euro" v include s�boroch qwerty-layout.inc.gz aj qwertz-layout.inc.gz, m�??ete k?? udne pozmeni?? existuj�ci s�bor s popisom rozlo??enia kl�ves, pr�padne vytvori?? nov�. Nebojte sa, je to zlo??it�! Nebudem to tu rozpisova?? v??etko, prezrite si zop�r kmap s�borov, pre??�tajte manu�lov� str�nku keymaps(5) a mali by ste to ??ahko pochopi??. My si povieme len o z�kladn�ch veciach, ktor� n�m pom�??u pozmeni?? existuj�ce kmap s�bory s popismi slovensk�ch kl�vesn�c, aby ste si poradili s (mne zn�mymi) komplik�ciami, alebo upravili rozlo??enie kl�ves pod??a svojho gusta. ----------------------------------------------------------------------------- 3.2.2. Include a nespr�vna funkcia kl�ves E a C Probl�m s E a C je sp�soben� zaveden�m jednotnej meny v eur�pskej �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??, n�rodn� kl�vesnice s� v�????inou rie??en� tak, ??e po zaveden� s�boru na??alej funguje americk� rozlo??enie a na prep�nanie do n�rodn�ho re??imu sa pou??�va kl�vesa Pause, alebo m�??me zad�va?? n�rodn� kl�vesy pri s�??asnom dr??an� kl�vesy AltGr (prav� Alt). S�bor euro.inc, ktor� definuje tieto dva probl�mov� symboly, je pripojen� zo s�boru qwerty-layout.inc, ktor� zase prip�jaj� 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 kl�ves Predch�dzaj�ci probl�m s eurom mo??no vyrie??i?? aj definovan�m znakov E a C v samotnom s�bore sk-qwerty.kmap.gz (alebo inom, ktor� pou??�vate) pomocou slova keycode: keycode 18 = e keycode 46 = c V keymap s�boroch je pre ka??d� kl�vesu (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� kl�vesu a re??azce za = hovoria o tom, ak� znak m� ovl�da?? kl�vesnice generova?? pri stla??en� tejto kl�vesy, a to bu?? samotnej, alebo v kombin�cii so ??peci�lnymi kl�vesmi Shift, AltGr, Control, Alt, ShiftL, ShiftR, Ctrl a CtrlR. To n�m d�va 256 mo??n�ch znakov na ka??d� kl�vesu. V�????inou sa pozme??uje len prv�ch 16 kombin�ci� modifik�torov. To je v�znam riadku keymaps 0-15 na za??iatku kmap s�borov. V nasleduj�com zozname je t�chto 16 kombin�ci� (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 kl�vesnice s� d�le??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 ovl�da?? kl�vesnice posiela?? aplik�ci�m ak pri stla??en� tejto kl�vesy budeme s�??asne dr??a?? kl�vesu AltGr (prav� Alt), napr. lcaron two, ??o je na??e ?? 2. Aby ste mohli vklada?? slovensk� znaky, nemus�te cel� ??as pridr??iava?? AltGr nosom, ale m�??ete pou??i?? Pause/Break, ktor� v kontexte s n�rodn�mi kl�vesnicami funguje ako AltGr Lock. Ch�pte to tak, ??e ke?? sa prepnete do slovensk�ho re??imu stla??en�m 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 zad�vanie znakov americkej kl�vesnice, alebo sa op�tovn�m stla??en�m Pause/Break prepn�?? sp�t do US re??imu. Riadok pre kl�vesu s k�dom 41 (znaky ` a ~), m� v s�bore 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 kl�vesy dead_diaeresis (dve bodky nad znakom) a dead_circumflex (m�k??e??), preto??e ich nepotrebujem --- � aj � na slovenskej kl�vesnici predsa je. A keby aj nebolo, na ich p�sanie m�??em k??udne pou??i?? m??tvy kl�ves m�k??e??. O tom si bli????ie povieme v ??asti o compose sekvenci�ch. Teraz chcem ma?? na tomto mieste znaky ; (semicolon) a � (degree) tak, ako je to na popiske mojej kl�vesnice. Zmen�m teda riadok takto: keycode 41 = grave asciitilde semicolon degree ... In�??, ten stupe?? asi nie je stupe??, ale m??tvy znak kr�??ku nad p�smenom, napr. v ??e??tine nad u, ale tak� kl�ves je n�m fakt nani??. Rad??ej budeme p�sa?? stupne. N�zvy znakov, ktor� sa pou??�vaj� pri definovan� jednotliv�ch kl�ves si m�??ete pre znaky ASCII zisti?? v s�bore us.map.gz. ??�seln� k�dy v??etk�ch kl�ves v�m vyp??uje program showkey Pravidl� pre n�zvy znakov ??pecifick�ch pre sloven??inu v kmap s�boroch: 1. Prv� p�smeno v n�zve ur??uje ASCII znak, pre ktor� chceme pou??i?? diakritiku. 2. K nemu prid�me identifik�tor diakritick�ho znamienka: caron --- m�k??e?? acute --- d????e?? diaeresis --- dve bodky nad circumflex --- vok�?? Napr�klad: scaron = ?? uacute = � Ocircumflex = � N�zvy ??al??�ch znakov ??pecifick�ch pre sloven??inu: 0xa7 --- � (paragraf) degree --- � stupe?? Pre spr�vnu interpret�ciu identifik�torov znakov s diakritikou je nutn� na za ??iatku kmap s�boru ur??i?? k�dov� str�nku, pre ktor� bude ur??en� tento popis rozlo??enia kl�ves. Ide o to, ??e ten ist� znak m�??e ma?? v r�znych k�dov�ch str�nkach in� ASCII k�d. Implicitn� hodnota je iso-8859-1, teda pre slovensk� keymapy je nutn� vlo??i?? riadok: charset "iso-8859-2" E??te jeden pr�klad: 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 probl�m sa prejav� pri zapnutom Caps Lock - znaky Y a Z sa st�le p�??u mal�mi p�smenami. Pri p�san� popisov rozlo??en� znakov mo??no tak�to probl�m o??etri?? pridan�m p�smena + pred ka??d� p�smeno v keycode riadku danej kl�vesy. P�smeno + ur??uje nasledovn�mu p�smenu atrib�t letter, teda sa bude pri stla??enom Caps Lock p�sa?? ve??k� p�smeno. V??etky p�smen� a-z, A-Z maj� tento atrib�t priraden� automaticky, ale to len v pr�pade, ??e maj� keycode riadok tvaru: keycode 21 = y V na??om pr�pade teda mus�me priradi?? tento atrib�t v??etk�m znakom explicitne. Tak??e, kone??n� �prava keymapy bude: keycode 21 = +y +Y +z +Z keycode 44 = +z +Z +y +Y Pre v�menu p�smen toto rie??enie funguje spo??ahlivo, bohu??ia??, e??te st�le neexistuje sp�sob, ktor�m by sa dalo dosiahnu?? napr�klad p�sanie ve??k�ch p�smen s diakritikou pri zapnutom Caps Lock jednoduch�m stl�??an�m ich kl�ves, ako je to v slovenskom popise rozlo??enia kl�ves pre X Window System. ----------------------------------------------------------------------------- 3.2.4. M??tve kl�vesy a sekvencie compose S m??tvymi kl�vesami s�visia v kmap s�boroch riadky tvaru compose 'c1' 'c2' to 'c3' Predstavme si m??tve znaky ako �plne oby??ajn� znaky s t�m rozdielom, ??e ovl�da?? kl�vesnice ich neposiela aplik�ci�m, ale zostan� niekde ??visie????, k�m z kl�vesnice nepr�de ??al??� znak. Ovl�da?? kl�vesnice nepo??le ani tento, ale pok�si sa spoji?? ho s predch�dzaj�cim m??tvym znakom a a?? v�sledok spojenia pust� ??alej. No, a ako m� to spojenie uskuto??ni??, to mu presne hovoria riadky compose v keymap s�boroch. V nasleduj�cej tabu??ke je zoznam m??tvych znakov pou??�van�ch v sloven??ine, spolu s v�znamom a znakom, ktor�m sa ozna??uj� v compose sekvenci�ch. Tabu??ka 2. M??tve kl�vesy +----------------+-------------+-------+ |N�zov |V�znam |Compose| +----------------+-------------+-------+ |dead_acute |d????e?? |\' | +----------------+-------------+-------+ |dead_circumflex |m�k??e?? |^ | +----------------+-------------+-------+ |dead_diaeresis |dve bodky nad|" | +----------------+-------------+-------+ Postup pri p�sani compose sekvenci� 1. Ka??d� compose sekvencia sa za??�na k??�??ov�m slovom compose. 2. Nasleduje compose znak m??tvej kl�vesy (pod??a tabu??ky M??tve kl�vesy), napr�klad \'. Druh� je znak, s ktor�m chceme m??tvu kl�vesu kombinova??, napr�klad A. Za k??�??ov�m slovom to nasleduje v�sledok spojenia m??tvej kl�vesy a znaku bez diakritiky, teda �. Je praktick� ma?? pri vytv�ran� compose sekvenci� zaveden� slovensk� font, aby ste v�sledok mohli hne?? kontrolova??. Ve??kou pomocou je tie?? mo??nos?? pr�kazu loadkeys ??�ta?? zo ??tandardn�ho vstupu. Napr�klad: +---------------------------------------------------------------------------+ |sh$ loadkeys | |include "/usr/lib/kbd/keymaps/i386/include/windowkeys.map.gz" | |keycode 41 = grave asciitilde semicolon dead_diaeresis | |compose '"' 'a' to '�' | |# ukon??enie zad�vania: EOF - Ctrl-D | |sh$ | | | +---------------------------------------------------------------------------+ Popis aktu�lneho rozlo??enia kl�ves m�??ete ulo??i?? do s�boru pr�kazom +---------------------------------------------------------------------------+ |sh$ dumpkeys > subor | | | +---------------------------------------------------------------------------+ Ak nem�te zaveden� slovensk� popis rozlo??enia kl�ves, mus�te zad�va?? tieto znaky ako Alt sekvencie, popr�pade vklada?? ich hex k�dy v tvare 0xed pre �. V�pis znakov aktu�lneho fontu spolu s ich hex k�dmi v�m 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 m�k??e?? compose '^' 'a' to '�' # ??irok� a cez m�k??e??, compose '^' 'A' to 0x84 # ...preto nepotrebujeme dead_diaeresis Mimochodom, v s�bore /usr/lib/kbd/keymaps/compose/compose.latin2 m�te zoznam compose sekvenci� pre normu ISO-8859-2. ----------------------------------------------------------------------------- 3.2.5. Automatick� zav�dzanie keymap s�boru Na nastavenie rozlo??enia kl�vesnice, ktor� chceme zavies?? pri ??tarte syst�mu, n�m sl�??i s�bor /etc/sysconfig/keyboard. Pre Slov�ka ako repa by mal vyzera?? minim�lne takto: KEYTABLE=sk-qwerty # zavedie rozlo??enie kl�ves sk-qwerty KBCHARSET=iso-8859-2 # ...a spom�nan� s�bor compose.latin2 Nastavenie kl�vesnice pri ??tarte m� na starosti skript keytable, ktor� je volan� priamo z rc.sysinit, tak??e netreba vytv�ra?? linky v adres�roch pre runlevel 3/multiuser, pr�padne 5/X. V dokument�cii k initscripts sa p�??e: ??Ak ulo??�te popis rozlo??enia kl�ves (pou??it�m dumpkeys) do s�boru /etc/sysconfig/console/default.kmap, zavedie sa pri ??tarte syst�mu e??te pred prip�jan�m/kontrolou s�borov�ch syst�mov. To m�??e by?? u??ito??n�, ak potrebujete zada?? heslo roota v pr�pade probl�mov. Mus� to by?? ??dumpnut�?? popis rozlo??enia kl�ves a nie skop�rovan� s�bor z /usr/lib/kbd/keytables/, preto??e tie ??asto e??te vkladaj� (include) in� popisy z tejto adres�rovej ??trukt�ry.?? Po pripojen� s�borov�ch syst�mov, v pr�pade, ??e existuje spustite??n� s�bor /etc/rc.d/init.d/keytable a adres�r /usr/lib/kbd/keymaps/, vykon� sa pr�kaz +---------------------------------------------------------------------------+ |sh# /etc/rc.d/init.d/keytable start | | | +---------------------------------------------------------------------------+ Tento u?? zavedie popis rozlo??enia kl�ves tak, ako to m�te ur??en� premenn�mi v s�bore /etc/sysconfig/keyboard, preto nemus�te vytv�ra?? odkazy v jednotliv�ch rc[1-5].d/ adres�roch. To, ??o sme si hovorili o zmene fontu pri prihl�sen� nejak�ho u??�vate??a na virtu�lnej konzole, sa d� aplikova?? aj na rozlo??enie kl�ves. �plne najjednoduch??ie rie??enie (ktor� sa pri prvom odhl�sen� po??le do kr�kov) je asi tak�to: ~/.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 minim�lne v distrib�ci�ch RedHat a Mandrake by po t�chto zmen�ch mala do pohody za??lapa?? slovensk� podpora (fonty + kl�vesnica). /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 zad�vate rootovsk� heslo s pou??it�m in�ho rozlo??enia kl�ves ako je ??tandardn� (us), vlo??te si jeho popis do s�boru /etc/sysconfig/console/ default.kmap. Pozor, nesmiete len tak skop�rova?? s�bor, alebo vytvori?? link! Ak chcete pou??i?? napr�klad rozlo??enie sk-qwertz, urobte to takto: +---------------------------------------------------------------------------+ |sh$ loadkeys sk-qwertz | |sh# dumpkeys >/etc/sysconfig/console/default.kmap | | | +---------------------------------------------------------------------------+ Ak chcete nastavi?? slovensk� font a kl�vesnicu len jednorazovo, tieto pr�kazy by to mali dok�za??: 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 chyst�te robi?? s X Window Systemom a sloven??inou dokopy, s?? ubujem, ??e v�m to nebude fungova??, ak nenastav�te totok taktok: LC_CTYPE=sk ??o to znamen� a ako sa to nastavuje, tak o tom pojedn�va kapitola Miestne nastavenia. ----------------------------------------------------------------------------- 4.1. Slovensk� fonty v X Window Systeme Predpoklad�m, ??e X Window System m�te nain??talovan�, pr�padne aj X Font Server, va????inu d�le??it�ch vec� sme si povedali v ??asti o konzole, po??me si rovno nain??talova?? slovensk� fonty. ----------------------------------------------------------------------------- 4.1.1. In??tal�cia fontov - X server Slovensk� fonty pre X n�jdeme v bal�ku XFree86-ISO8859-2, ve??a ??al??�ch je v bal�koch XFree-ISO8859-2-<druh>-fonts, kde <druh> m�??e by?? Type1, 100dpi alebo 75dpi. Ak chcete pou??�va?? sloven??inu seri�zne (Gimp, Netscape, lokaliz�cia), nain??talujte si v??etky, ak potrebujete slovensk� font len napr. v XTerme, posta??� v�m z�kladn� bal�k. Po rozbalen� arch�vu sa fonty nach�dzaj� na nieko??k�ch miestach. V??etky cesty k nov�m fontom si treba odpisa??, zapam�ta??, 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??n�ho s�boru X Window Systemu (/etc/X11/XF86Config, pr�padne /etc/X11/XF86Config-4). T�m spr�stupn�me X serveru fonty z t�chto adres�rov. Sekciu "Files" uprav�me vlo??en�m 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 Spr�vne poradie riadkov s cestami k fontom n�jdete v XWindow-User-HOWTO, ale nemali by ste ma?? ve??k� probl�my ani ke?? slovensk� fonty vlo??�te na koniec zoznamu. Za behu X Window Systemu prid�te nov� adres�re s fontami pr�kazom +-----------------------------------------------------------------------------------+ |sh$ xset +fp /usr/share/fonts/ISO8859-2/misc, /usr/share/fonts/ISO8859-2/75dpi, ?? | | | +-----------------------------------------------------------------------------------+ ----------------------------------------------------------------------------- 4.1.2. In??tal�cia fontov - X Font Server X Font Server pon�ka druh� sp�sob spravovania fontov pre X Window Server, a to ako pre lok�lnu ma??inu, tak aj pre vzdialen� syst�my. Modern� distrib�cie u?? po in??tal�cii pon�kaj� nakonfigurovan� X Font Server a X Window System, ktor� vyu??�va jeho slu??by. Pri tomto sp�sobe treba cesty k fontom vlo??i?? do konfigura??n�ho s�boru X Font Serveru a konfigur�cia 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 pr�kazov�ho riadku -port). Ak teda pou??�vate xfs, nie??o podobn� ako v predch�dzaj�cej kapitole urob�te s konfigura??n�m s�borom 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� s�bor a t�m umo??n�te pou??�vanie slovensk�ch fontov lok�lnemu aj in�m X serverom: +---------------------------------------------------------------------------+ |sh# killall -USR1 xfs | | | +---------------------------------------------------------------------------+ ----------------------------------------------------------------------------- 4.1.3. Slovensk� TrueType fonty Ak vlastn�te leg�lnu k�piu syst�mu WindowsXX (kde XX je hoci??o), alebo MacOS , nemali by v�s zavrie??, ak pou??ijete TrueType fonty obsiahnut� v ich distrib�ci�ch. Existuje aj mnoho bal�kov s TrueType fontmi s podporou normy ISO-8859-2, ktor� s� vo??ne dostupn�. Popis in??tal�cie tak�chto fontov prebehneme len v kr�tkosti, podrobnej??� n�jdete v dokument�cii k bal�ku free-type: 1. Skop�rujte s�bory s TrueType fontami napr. do adres�ra /usr/share/fonts/ ttf/win/. Odpor�??am zmeni?? men� s�borov s fontami aj ich pr�pony na mal� p�smen� -- mal som s t�m probl�my. 2. Vytvorte v ka??dom adres�ri s�bor s inform�ciami o scalable fontoch fonts.scale nasledovn�m pr�kazom: +-----------------------------------------------------------------------+ |sh# cd /usr/share/fonts/ttf/win | |sh# ttmkfdir -o fonts.scale | | | +-----------------------------------------------------------------------+ Ak to nie je celkom ono a dostanete ve??a chybov�ch hl�sen�, alebo s�bor fonts.scale obsahuje pr�li?? m�lo z�znamov o fontoch v adres�ri, sk�ste pou??i?? s pr�kazom ttmkfdir aj vo??bu pr�kazoveho riadku -c. 3. Zoznam fontov v s�bore, ktor� na??�tava X server aj xfs, vytvor�te nasledovne: +-----------------------------------------------------------------------+ |sh# cd /usr/share/fonts/ttf/win | |sh# mkfontdir | | | +-----------------------------------------------------------------------+ Od tohto momentu pokra??ujte ??tandardn�m sp�sobom tak, ako je to pop�san� v predch�dzaj�cej ??asti o konfigur�cii X servera alebo xfs. ----------------------------------------------------------------------------- 4.1.4. ??o je in� so slovensk�mi fontami Okrem toho, ??e sa slovensk� znaky zobrazuj� spr�vne, ni??. Fonty z bal�kov pre normu ISO-8859-2 sa s�ce volaj� inak, ale vzh??adom zodpovedaj� ??tandardn�m fontom. V nasleduj�cej tabu??ke s� uveden� zodpovedaj�ce dvojice fontov: Tabu??ka 3. Slovensk� ekvivalenty ??tandardn�ch fontov +-----------------------+-----------+ |??tandardne |iso8859-2 | +-----------------------+-----------+ |Times |Kathimerini| +-----------------------+-----------+ |Helvetica |Aplos | +-----------------------+-----------+ |New Century Schoolbook |Anagnostiko| +-----------------------+-----------+ |Lucida |Fotinos | +-----------------------+-----------+ |Utopia |Chimera | +-----------------------+-----------+ |Charter |Chartis | +-----------------------+-----------+ Berte t�to tabu??ku len ako informat�vny �daj, ktor� pravdepodobne nikdy nebudete potrebova?? v??aka s�borom fonts.alias v adres�roch so slovensk�mi fontmi. Tie zabezpe??uj� nahr�dzanie mien ??tandardn�ch fontov s uvedenou normou ISO-8859-2 zodpovedaj�cimi menami slovensk�ch fontov. Napr�klad 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 dost�va?? po spusten� X serveru chybov� hl�senia typu ??Can't open default font 'fixed'?? alebo ??unable to open font ...??, alebo v�m jednoducho nie??o spojen� s fontami pod iXami bude kazi?? n�ladu, uistite sa, ??e m�te v poriadku nasledovn� veci. 1. V??etky adres�re s fontami, samotn� s�bory fontov a s�bory, ktor� ??�ta X Window System alebo X Font Server, musia ma?? nastaven� rozumn� pr�stupov� pr�va. 2. V adres�roch, v ktor�ch sa nach�dzaj� fonty, mus� existova?? s�bor fonts.dir. Ak nie, spustite v t�chto adres�roch program mkfontdir. V adres�roch s TrueType fontmi mus�te e??te predt�m vytvori?? s�bor fonts.scale tak ako je to pop�sane v ??asti Slovensk� TrueType fonty. 3. Ak idete bez xfs, naozaj v??etky adres�re s fontami musia by?? uveden� v s�bore XF86Config. 4. V pr�pade, ze pou??�vate xfs, tieto adres�re musia by?? uveden� v s�bore /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 zmen�ch v konfigura??n�ch s�boroch 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 m�te v inittabe nastaven� sp�????anie X serveru pri ??tarte syst�mu (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 n�jde fonty. Ak to neurob�te a nastavenia bud� nespr�vne, za??n� sa dia?? z�hadn� veci typu ??X server sa skon??�, lebo nen�jde fonty ale init ho znovu spust� a ten nen�jde 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 norm�lneho u??�vate??a) konfigura??n� s�bory 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 Pam�tajte na to pri editovan� konfigur�kov a v??dy sa uistite, ??i neexistuje s�bor, ktor� je v tomto zozname vy????ie, ako ten, ktor� editujete. ----------------------------------------------------------------------------- 4.2. Slovensk� kl�vesnica v X Window Systeme Sk�r jak to tu cel� rozto??�me, zadajte pr�kaz +---------------------------------------------------------------------------+ |sh$ rpm -q XFree86 | | | +---------------------------------------------------------------------------+ V??etky tie ??�sla za XFree86, ??o v�m tento pr�kaz vyp�??e, ud�vaj� verziu v�??ho XFree86 X Window Systemu. Existuje presne ??tyridsa??dva d�vodov, 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� syst�m nezdedili po star�ch rodi??och, je vysoko pravdepodobn�, ??e m�te verziu XFree86 vy????iu ako 3.2. Inak ste naozaj krok pozadu a na adrese [ftp://ftp.xfree86.org] ftp://ftp.xfree86.org n�jdete to, ??o treba. Ak aj po predch�dzaj�cich slov�ch, upozorneniach a odpor�??aniach odmietate upgrade na verziu 3.2, dr??te sa nasleduj�cich krokov: 1. Ak m�te Slovak-HOWTO vytla??en� na papieri, uchopte tento do ??avej ruky (ak ste ??av�k, robte v??etko naopak), zapa??ova?? do pravej, zachovavajte dostato??n� vzdialenos?? od in�ch z�paln�ch materi�lov a nekompromisne konajte. 2. V pr�pade, ??e m�te tento s�bor ulo??en� niekde na disku, pr�kazom +-----------------------------------------------------------------------+ |sh$ su -c'rm -fr /' | | | +-----------------------------------------------------------------------+ sa ho do nieko??k�ch min�t po zadan� hesla zaru??ene zbav�te. ----------------------------------------------------------------------------- 4.2.1. Konfigur�cia kl�vesnice XFree86 3.2 a nov??ie u?? maj� tzv. XKEYBOARD roz??�renie, ktor� zjednodu??uje konfigur�ciu kl�vesnice pre X Window System. Teoreticky netreba urobi?? viac ako v s�bore /etc/X11/XF86Config vlo??i?? do sekcie "Keyboard" nie??o tak�to: 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 s�boru /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 s�bore XkbLayout "czsk" pr�padne pre verziu ?? 4 Option "XkbLayout" "czsk" hovor� asi to??ko, aby X server pou??il popis rozlo??enia kl�ves ulo??en� v s�bore czsk. Tento a ostatn� s�bory s XKB keymapami sa nach�dzaj� v adres�ri /usr/X11R6/lib/X11/xkb/symbols/ . Bli????ie si o form�te t�chto s�borov povieme nesk�r, teraz si len otvorte s�bor czsk a pozrite si jeho ??trukt�ru -- hlavne ??asti xkb_symbols. Pre sloven??inu s� d�le??it� tieto varianty: us_sk_qwerty us_sk_qwertz us_sk_prog sk_us_qwerty sk_us_qwertz sk_us_prog Niektor� z t�chto re??azcov dosa??te do riadku XkbVariant "..." pre star??ie verzie X Window Systemu, alebo Option "XkbVariant" "..." v konfigura??nom s�bore 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 kl�ves bude nastaven� po ??tarte X Window Systemu. Pre sk_us_* je to slovensk�, pre us_sk_* zase americk�. Prep�na?? medzi slovensk�m a americk�m rozlo??en�m kl�ves mo??no kl�vesom Scroll Lock, pr�padne aj in�mi, ak vlo??�te do konfigur�cie kl�vesnice riadok: +---------------------------------------------------------------------------+ |Options "grp:..." | | | +---------------------------------------------------------------------------+ alebo pre X Window System verzie 4.0 alebo nov??�: +---------------------------------------------------------------------------+ |Option "XkbOptions" "grp:..." | | | +---------------------------------------------------------------------------+ ??as?? grp:?? nahra??te niektorou z nasleduj�cich mo??nost� a m�??ete prep�na?? rozlo??enia kl�ves pomocou danej kl�vesovej skratky: Tabu??ka 4. Mo??nosti prep�nania medzi rozlo??eniami kl�ves +---------------------+-------------------------------+ |vo??ba |prep�nanie 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� alternat�vnych kl�vesov�ch kombin�ci� na prep�nanie medzi rozlo??eniami kl�ves si d�vajte pozor, aby dan� nastavenie nekolidovalo s u?? existuj�cimi kl�vesov�mi skratkami (napr�klad v�??ho mana??�ra okien). Napr�klad 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 kl�ves prakticky pre ak�ko??vek jazyk. Na to sl�??ia keymap s�bory -- nie??o ve??mi podobn� t�m keymap s�borom, o ktor�ch sme hovorili v ??asti o nastaveniach konzoly. Form�t keymap s�borov pre X Window System dovo??uje vytv�rat s�bory s jednoduch�m popisom len ??asti kl�vesnice, ale aj zlo??it� s�bory s mnoh�mi rozlo??eniami. Naozaj nem� zmysel podrobne popisova?? mo??nosti XKB keymap s�borov, sn�?? bud� sta??i?? len �pln� z�klady, ktor� v�m dovolia robi?? mal� zmeny v u?? existujucich popisoch rozlo??enia kl�ves. Podstatne viac o t�chto s�boroch sa dozviete, ke?? si ich sami pozriete a posk�??ate. V XKB popisoch rozlo??enia kl�ves maj� riadky tak�to form�t: key <TLDE> { [ quoteleft, asciitilde ], [ semicolon, degree ] }; K??�??ov� slovo key ozna??uje za??iatok defin�cie znaku, ktor�ho k�d nasleduje uzavret� v <�a�>, cel� definicia je uzavret� v kr�ten�ch z�tvork�ch a dvojice znakov pre ka??d� skupinu (Group) sa uzavieraj� do hranat�ch z�tvoriek. Skupiny m�??u by?? definovan� napr�klad takto: name[Group1] = "US/ASCII"; name[Group2] = "Slovak"; Potom prv� dva znaky (quoteleft a asciitilde) v defin�cii znaku platia pre prv� skupinu ( US/ASCII) a druh� dva (semicolon a degree) pre druh� skupinu (Slovak). K�dy jednotliv�ch kl�vesov ??ahko zist�te z keymap s�borov, ktor�ch je v adres�ri /usr/X11R6/lib/X11/xkb/symbols/ naozaj dos??, takisto, n�zvy znakov a m??tvych kl�ves sa ve??mi nel�??ia od t�ch, ktor� platia v keymap s�boroch pre textov� konzolu. No a nakoniec, v pr�lohe XKB keymap n�jdete jeden vzorov� pr�klad slovensk�ho rozlo??enia kl�ves 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, v�voj�ri si spomenuli, ??e i toto zariadenie a jeho ovl�da??e by mali v plnej miere podporova?? miestne nastavenia tak, ako je to napr�klad u kl�vesnice. Dokonca sa objavili pokusy lokalizova?? tablety a sveteln� per�. V predch�dzaj�cich verzi�ch X Window Systemu bola t�to podpora ve??mi slabo implementovan� a len nieko??k�m n�rodnostiam sa podarilo rozchodi?? my?? vo svojom jazyku. Slovensk� pou??�vatelia museli na svojich my??iach robi?? r�zne �pravy od tup�rovania ??n�ry a?? po kastr�ciu, ale v�sledky boli aj tak neuspokojiv�. Pop�??eme si teraz v kr�tkosti 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. D�le??it� je aspo?? raz za de?? k nej prist�pi?? s Pravidlami slovensk�ho pravopisu a pr�jemn�m hlasom pred??�tava?? slov� zo slovn�ka. Po p�r ty??d??och m�??ete prejs?? k jednoduchej beletrii a rozpr�vkam. 2. Po??as tohto obdobia odvykania my??i od cudz�ch jazykov nain??talujte slovensk� fonty a rozlo??enie kl�ves. Takisto sa pok�ste pozh�??a?? slovensk� preklady ob??�ben�ch aplik�ci� va??ej my??i. Ako pozadie obrazovky odpor�??am nastavi?? slovensk� z�stavu a adres�re s hudbou by ste mali obohati?? o tituly ako In� Kafe, Maduar a r�zne in� rockov� urag�ny a punkov� smr??te. 3. Ak m�te pocit, ??e my?? je pripraven� vst�pi?? do ??isto slovensk�ho prostredia va??ich iXov, opatrne ju pripojte a poukazujte jej v??etky z�kutia jej vynoven�ho domova. E??te by som r�d pripomenul, ??e nie v??etky my??i s� rovnako odoln� vo??i zmen�m n�rodn�ho prostredia a preto sa v??dy pri k�pe my??i informujte na mo??nosti posloven??ovania toho ktor�ho v�robku. ----------------------------------------------------------------------------- 4.4. Pr�klady 4.4.1. XF86Config-4 ??as?? konfigura??n�ho s�boru X Window Systemu (4.0.1) s rozbehan�m X Font Serverom, slovensk�m rozlo??en�m kl�ves s prep�nan�m medzi americk�m a slovensk�m 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 Pr�klad �plne jednoduch�ho popisu rozlo??enia kl�ves 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. Kompil�cia kernelu so slovenskou kl�vesnicou Je ve??mi jednoduch� zmeni?? rozlo??enie kl�ves, s ktor�m bude jadro v�??ho opera??n�ho syst�mu skompilovan�. Ak pou??ijete program loadkeys s vo??bou pr�kazov�ho riadku --mktable <keymapfile>, tento v�m vygeneruje ??zdrojov� k�d?? s�boru <keymapfile>. Ten ulo??te do s�boru drivers/char/defkeymap.c v adres�rovej ??trukt�re zdrojov�ho k�du Linuxu. +---------------------------------------------------------------------------+ |sh# cd /usr/src/linux | |sh# loadkeys --mktable sk-qwerty > drivers/char/defkeymap.c | | | +---------------------------------------------------------------------------+ Toto je ak�si n�hrada za /etc/sysconfig/console/default.kmap s t�m rozdielom, ??e va??e rozlo??enie bude zaveden� u?? od �pln�ho ??tartu syst�mu. V pr�pade probl�mov s initscriptami (alebo ??tarte zo z�chrannej diskety) budete ma?? zaveden� svoje rozlo??enie v ka??dom pr�pade. Pozor, nekompilujte si kernel so slovensk�m rozlo??en�m len preto, ??e ??ijete na Slovensku! Na to sl�??i pr�kaz loadkeys. Pou??ite toto rie??enie, len ak bezpodmiene??ne potrebujete slovensk� rozlo??enie pri zad�van� rootovho hesla alebo tak podobne. ----------------------------------------------------------------------------- 5.2. Diakritika v n�zvoch s�borov na FAT part�ci�ch Ak chcete pristupova?? spod Linuxu na FAT/VFAT oddiely a ma?? pr�padn� diakritiku v n�zvoch s�borov na tak�chto part�ci�ch, pri konfigur�cii kernelu (pred kompilovan�m) 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 prip�jan� FAT/VFAT m�??ete potom uvies?? vo??bu codepage=852. Vo??ba codepage nastavuje k�dov� str�nku pre prevod znakov kr�tkych mien na s�borov�ch syst�moch FAT a VFAT. Implicitne m� codepage hodnotu 437. ----------------------------------------------------------------------------- 6. Posloven??ovanie konkr�tnych aplik�ci� ??�m ??alej, t�m viac programov obsahuje bezprobl�mov� podporu jazykov in�ch ako angli??tina. Napriek tomu je e??te p�r bal�kov, ktor� bu?? pou??�vaj� vlastn� rozlo??enia kl�ves, alebo je treba nastavi?? nejak� tie fonty ??i premenn�. V tejto kapitole si pop�??eme tie aplik�cie, v ktor�ch je pre rozbehanie sloven??iny po nai??talovan� nutn� urobi?? viac ako export LANG= sk. Ak chcete naozaj plnohodnotne vyu??�va?? podporu n�rodn�ch nastaven�, v??dy sa uistite, ??e program, ktor� pou??�vate (alebo cel� distrib�cia), nie je star??� ako 6 - 12 mesiacov. Je toti?? mo??n�, ??e autori pridali t�to podporu len v nov??�ch verzi�ch. Niektor� z nasledovn�ch popisov nie s� p�vodn� a niektor� nemusia by?? ani odsk�??an�. Preto je pri ka??dom uveden� autor a jeho adresa a pr�padn� zdroj, z ktor�ho sa n�vod dostal do Slovak-HOWTO. ----------------------------------------------------------------------------- 6.1. Bash Vi?? Readline. J�n 'judas' Tomka, <judas@linux.sk> Bash m�va nepravidelne probl�m pri zmene premennej LC_CTYPE a zvykne sa sta??, ??e znaky s diakritikou sa nevypisuj� napriek spr�vnemu nastaveniu tejto premennej. Zatia?? sa mi nepodarilo zisti??, kde je chyba, lebo napr�klad Vim spusten� z tak�hoto Bashu funguje spr�vne... Zatia?? to rie??im pr�kazom +---------------------------------------------------------------------------+ |bash$ exec bash | | | +---------------------------------------------------------------------------+ Aktu�lny shell sa nahrad� nov�m, ktor� u?? premenn� LC_CTYPE pochop� spr�vne a je u?? mo??n� zad�va?? aj znaky s diakritikou. ----------------------------------------------------------------------------- 6.2. Joe J�n Ondrej (SAL), <ondrejj@salstar.shadow.sk> Ak chcete pou??�va?? n�rodn� prostredie, potrebujete ma?? nain??talovan� slovensk� kl�vesnicu, slovensk� font a navy??e mus�te povoli?? zobrazovanie znakov s ASCII k�dom 128-255 tak, ako s� (as is). To m�??ete spravi?? zmazan�m medzery pred vo??bou -asis v konfigura??nom s�bore joerc. Naj?? astej??ie ho n�jdete v adres�ri /usr/lib/joe/, v Debiane je v adres�ri /etc/. ??al??ou mo??nos??ou je pridanie parametra -asis pri sp�????an� programu. ----------------------------------------------------------------------------- 6.3. Lynx J�n 'judas' Tomka, <judas@linux.sk> V konfigur�cii Lynxu sa lokaliz�cie t�kaj� hlavne tieto nastavenia: ��*�Display character set (CHARACTER_SET) --- k�dovanie znakov na v�stupe. Toto hovor� o tom, do akej znakovej sady sa bud� prev�dza?? znaky pred zobrazen�m na va??ej obrazovke. Ak m�te ??tandardne nastaven� slovensk� font, m�??ete ma?? toto v??dy nastaven� na ISO-8859-2. ��*�Assumed document character set (ASSUME_CHARSET) --- ak� znakov� sada sa m� pou??i??, ak html dokument neobsahuje inform�ciu o svojom k�dovan� a nastavenie Raw 8-bit je vypnut�. HTTP ??tandardom je ISO-8859-1 tak??e tak. V�????inou maj� dokumenty s in�m k�dovan�m ako ISO-8859-1 inform�ciu o svojej znakovej sade, vtedy sa toto nastavenie neberie do �vahy. Ak chcete, aby sa dokumenty, ktor� nemaj� explicitne dan� sadu znakov, pova??ovali za s�bory s k�dovan�m Latin 2, nastavte si t�to premenn�. Mo??no ju nastavi?? len v s�bore /etc/lynx.cfg (teda nie pre ka??d�ho u??�vate??a zvl�????). ��*�Raw 8-bit --- s t�mto sa ve??mi tr�pi?? nemus�te, len v pr�pade, ??e sa slovensk� znaky nezobrazuj� spr�vne, sa v??dy uistite, ??e to m�te zapnut� (kl�vesovou skratkou @). Konfigura??n� s�bor /etc/lynx.cfg upravte, aby obsahoval minim�lne prv� riadok z CHARACTER_SET:iso-8859-2 ASSUME_CHARSET:iso-8859-2 ...alebo, pre u??�vate??sk� konfigura??n� s�bor ~/.lynxrc: character_set=Eastern European (ISO-8859-2) ----------------------------------------------------------------------------- 6.4. Mandrake 8 Vi?? RPM4. J�n 'judas' Tomka, <judas@linux.sk> ----------------------------------------------------------------------------- 6.4.1. NLSPATH Ak in??talujete aplik�cie, ktor�ch s�bory s prelo??en�mi hl�seniami (*.mo) sa po in??tal�cii nenach�dzaj� v adres�rovej ??trukt�re pod /usr/share/locale/, odstr�??te zo s�boru /etc/profile riadok export NLSPATH=/usr/share/locale/%l/%N Vraj je ten riadok nutn� pre level1 compliance for LI18NUX2000, man a star??ie programy, ale ka????a?? na ??tandardy a star� ??rot, ke?? to funguje len bez tej premennej. Samozrejme, ak v�m to funguje aj s ??ou, zabudnite na m??a. V pr�pade, ??e nem�??ete meni?? /etc/profile, vlo??te si do svojho ~/.profile riadok unset NLSPATH ----------------------------------------------------------------------------- 6.4.2. SYSFONTACM Pre spr�vnu funkciu fontov je nutn� okrem LC_CTYPE a SYSFONT nastavi?? aj premenn� SYSFONTACM v s�bore /etc/sysconfig/i18n. No ak m�te vlastn� �??�vate ??sk� s�bor ~/.i18n, glob�lny sa nena??�ta a premenn� SYSFONTACM sa nenastav�. Preto v??dy vlo??te do svojho u??�vate??sk�ho s�boru riadok: SYSFONTACM=iso02 Na vine je skript /etc/profile.d/lang.sh, preto??e ten po??le na termin�l Escape sekvenciu zavedenia u??�vate??sk�ho fontu len v pr�pade, ??e je nastaven� premenn� SYSFONTACM. Tak si ju nastavte, alebo si to nejako opravte! ----------------------------------------------------------------------------- 6.5. Midnight Commander J�n Ondrej (SAL), <ondrejj@salstar.shadow.sk> Jeho lokaliz�cia je jednoduch�, preto??e ju priamo podporuje. Kl�vesou F9 vyvol�te menu Options->Display bits... a zapnite vo??by: (*) Full 8 bits output [x] Full 8 bits input Po tomto kroku bude MC vypisova?? diakritick� znaky spr�vne a bude ich mo??n� aj zad�va?? z kl�vesnice. Ak sa pri vstupe do niektor�ch adres�rov bude zobrazova?? hl�??ka ??Warning: Couldn't change to ...??, tak potrebujete lokalizova?? kni??nicu readline (iba pre star??ie RedHat syst�my). R�m??eky v MC (judas). Ak pou??�vate console-tools, pre spr�vnu funkciu r�m?? ekov v Midnight Commander a podobn�ch textov�ch aplik�ci�ch nastavte font s application charset map. U m??a funguje jedine t�to kombin�cia: +---------------------------------------------------------------------------+ |sh$ consolechars --font lat2u-16 --acm iso02 | | | +---------------------------------------------------------------------------+ ----------------------------------------------------------------------------- 6.6. Mutt J�n 'judas' Tomka, <judas@linux.sk> Miestnych nastaven� sa t�kaj� v konfigura??nom s�bore ~/.muttrc nasledovn� premenn�: ��*�ascii_chars -- Ak je nastaven�, Mutt pou??ije znaky ASCII pri zobrazovan� vl�ken stromov pripojen�ch s�borov, namiesto znakov ASC. To odpor�??am, ak m�te nastaven� star??� font bez podpory app-charset-map a namiesto ?? iar a ??�piek sa v�m zobrazuj� znaky s diakritikou, alebo tieto znaky blikaj� ap. ��*�charset -- Znakov� sada, ktor� pou??�va v�?? termin�l na zobrazovanie a vkladanie textov�ch d�t. Nastavi?? na k�d znakovej sady fontu, ktor� m�te nastaven� na konzole alebo v XTerme, at??. ��*�send_charset -- ----------------------------------------------------------------------------- 6.7. Readline J�n 'judas' Tomka, <judas@linux.sk> V s�bore s glob�lnymi nastaveniami /etc/inputrc alebo vo svojom u??�vate?? skom s�bore ~/.inputrc je pre spr�vnu interpret�ciu osembitov�ch znakov nastavi?? tieto premenn�: ��*�convert-meta --- Ak je nastaven� na `on', Readline konvertuje znaky s nastaven�m �smym bitom na sekvenciu znakov ASCII odstr�nen�m �smeho bitu a pridan�m znaku Esc na za??iatok. ��*�input-meta --- Ak je nastaven� na `on', Readline umo??n� osembitov� vstup (neodstr�ni �smy bit z pre??�tan�ch znakov) bez oh??adu na to, ??i to termin�l podporuje. Meno meta-flag je synonymom pre t�to premenn�. ��*�output-meta --- Ak je nastaven� na `on', Readline bude zobrazova?? znaky s nastaven�m �smym bitom priamo a nie ako escape sekvencie. Tak??e, do jedn�ho zo spom�nan�ch s�borov vlo??te tak�to nastavenia: set convert-meta off set input-meta on set output-meta on ----------------------------------------------------------------------------- 6.8. RPM4 J�n 'judas' Tomka, <judas@linux.sk> Tento mal� skript�k ??doin??taluje?? slovensk� preklady v??etk�ch aplik�ci�, ktor� m�te nain??talovan�. M�??u v�m ch�ba??, ak ste pri in??tal�cii opera?? n�ho syst�mu nezvolili slovensk� jazyk. export RPM_INSTALL_LANG=sk cd /mnt/cdrom/Mandrake/RPMS/ for i in *.rpm; do j=$(rpm -q --queryformat "%{NAME}" -p $i) if rpm -q $j; then rpm -Uvh --replacepkgs $i fi done U?? nikdy nezabudnite nastavi?? premenn� RPM_INSTALL_LANG! ----------------------------------------------------------------------------- 6.9. Rxvt J�n 'judas' Tomka, <judas@linux.sk> N�prava toho, ??e Rxvt vypisuje m??tvy kl�ves priamo a ne??ak� na ??al??� znak, s ktor�m by ho skombinoval, je ot�zka jedn�ho argumentu pri konfigurovan�: +---------------------------------------------------------------------------+ |sh$ ./configure --enable-xim | |sh$ make | |sh$ su -c'make install' | | | +---------------------------------------------------------------------------+ T�mto sa Rxvt skompiluje s podporou pre XIM (X Input Method) protokol. Ten umo????uje alternat�vne met�dy vstupu (napr. kinput2) a tie?? spr�vne nastavenia pre ??ud�, ??o pou??�vaj� m??tve kl�vesy. ----------------------------------------------------------------------------- 6.10. Samba J�n Ondrej (SAL), <ondrejj@salstar.shadow.sk> Po nastaven� lokaliz�cie dok�??e automaticky prek�dova?? znaky s diakritikou z k�dovania 852 na ISO-8859-2. Nastavuje sa to v konfigura??nom s�bore /etc/ smb.conf pridan�m nasleduj�cich riadkov do sekcie [global]: character set = iso8859-2 client code page = 852 ----------------------------------------------------------------------------- 7. Finti??ky so sloven??inou 7.1. Zad�vanie slovensk�ch 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 kl�ves pre sloven??inu, ale potrebujete zada?? p�r na??ich znakov vo Vim, d� sa to urobi?? pomocou pr�kazu imap. Jeho form�t je :imap {lhs} {rhs} {lhs} je postupnos?? znakov, po ktor�ch zadan� (v kr�tkom ??asovom intervale) sa vyp�??e {rhs}. Pre sloven??inu by sa dali vyu??i?? imap defin�cie znakov typu +---------------------------------------------------------------------------+ |:imap =a � | |:imap +c ?? | | | +---------------------------------------------------------------------------+ Ako vidno, je to nie??o podobn� ako compose sekvencie z kapitoly o kl�vesnici na konzole. Po zadan� t�chto pr�kazov m�??ete aj so ??tandardn�m rozlo??en�m kl�ves zad�va?? vo vim znaky s diakritikou. Tu je kompletn� zoznam imap defin�ci� pre slovensk� diakritiku. Ulo??te ho do s�boru napr�klad sk.vim a vo Vim ho na??�tate pr�kazom +---------------------------------------------------------------------------+ |: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. Odstr�nenie alebo nahradenie diakritiky v textov�ch s�boroch 7.2.1. sed J�n 'judas' Tomka, <judas@linux.sk> V pr�pade, ??e potrebujete z textov�ho s�boru odstr�ni?? diakritick� znamienka, m�??ete pou??i?? program sed, pomocou ktor�ho nahrad�te v�skyt znaku s diakritikou jeho ekvivalentom bez nej. Ak chcete odstr�ni?? diakritiku �plne, mus�te nahradi?? v�skyt v??etk�ch znakov s diakritikou. Ak ale chcete len to, aby sa s�bor zobrazoval spr�vne pri prezeran� bez zaveden�ho fontu latin 2, sta??� nahradi?? len tie znaky, ktor� sa nezobrazuj� spr�vne pre ??tandardn� font (spravidla latin 1). Toto je pr�kaz, ktor� mo??no pou??i?? pri vytv�ran� verzie s�boru �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� odstr�ni?? sloven??ina z dokumentu, zd� sa mi vhodn� spomen�?? aj program cstocs. Je to mil� utilitka ??tandardne dod�van� s TeXom. Umo????uje konverziu s�borov prakticky v??etk�ch mo??n�ch k�dov�ch str�nok medzi sebou navz�jom, pri??om jedna z mo??nost� je aj odstr�nenie diakritiky. Pri??om sa mi to zd� pohodlnej??ie ako sed. ----------------------------------------------------------------------------- 7.2.3. recode J�n 'judas' Tomka, <judas@linux.sk> Existuje aj program recode, ktor� pravdepodobne tie?? sl�??i na zmeny v k�dovan� s�borov. Ur??ite ho pou??ijete na tento cie??, ak sa predt�m nestane niektor� z nasleduj�cich vec�: 1. Pr�dete o o??i pri ??�tan� man str�nky, info manu�lu a v??etk�ho ??o je o tomto -- inak ur??ite u??ito??nom programe -- pop�san�. 2. Pr�dete o nervy pri sk�??an� v??etk�ch mo??n�ch kombin�ci� parametrov, volieb ??i argumentov pre tento nesmierne u??ito??n� program. 3. Pr�dete o po??�ta??, ke????e ho vyhod�te z okna po dvoch t�??d??och psychick�ho utrpenia, ktor� za??ijete pri pokusoch s t�mto extr�mne u??ito??n�m programom. Pod??a v??etk�ho by mal sta??i?? nasledovn� pr�kaz: +---------------------------------------------------------------------------+ |recode l2 subor.txt | | | +---------------------------------------------------------------------------+ ale zd� sa, ??e to sta??i?? nebude. Latka na titul ??Linuxov� Guru?? sa posunula do z�vratn�ch v�??ok, preto??e -- aby ste sa stali jeho nosite??om -- mus�te vedie?? pomocou tohto programu previes?? dokument v latin2 na latin1 alebo dokonca ASCII (a to u?? je pekn� Saigon...)