LDP/LDP/howto/docbook/Slovak-HOWTO/console.sgml

916 lines
38 KiB
Plaintext
Raw Permalink Normal View History

<!--DOCTYPE section PUBLIC "-//OASIS//DTD DocBook V4.1//EN"-->
<!-- $Id$ -->
<section id="console">
<title>Nastavenia konzoly</title>
<para>T<>to kapitola by mala <20><>tavou, pou<6F>nou a z<>rove<76> z<>bavnou formou pojedn<64>va<76> o veciach medzi
prstom a okom. Z<>kladnou ot<6F>zkou nech n<>m je <quote>Zmysel <20>ivota, vesm<73>ru a v<>bec.</quote>
</para>
<section id="console-fonts">
<title>Sloven<65>ina na v<>stupe textovej konzoly</title>
<section id="console-fonts-fonts">
<title>Fonty</title>
<para>Ke<4B> zobud<75>te o polnoci hocikoho, kto vo svojom <20>ivote videl po<70><6F>ta<74> a op<6F>tate sa ho, ako
rozbeha<68> slovensk<73> znaky, ur<75>ite spomenie nie<69>o ako fonty. Na zobrazovanie znakov na
obrazovku -- <20>i u<> v textovom alebo grafickom re<72>ime -- sl<73><6C>ia skuto<74>ne fonty. Fonty pre
konzolu a programy ur<75>en<65> na manipul<75>ciu s nimi sa nach<63>dzaj<61> v bal<61>ku
<application>kbd</application>. Po jeho nain<69>talovan<61> s<> s<>bory s fontami umiestnen<65> v
adres<65>ri <filename class="directory">/usr/lib/kbd/consolefonts/</filename>.</para>
<para>Pre n<>s s<> d<>le<6C>it<69> najm<6A> s<>bory, ktor<6F> maj<61> v mene <filename>iso02</filename>,
<filename>lat2</filename>, <filename>latin2</filename> alebo <20><>slo <filename>852</filename>.
To nazna<6E>uje, <20>e ide o fonty s podporou <emphasis>ISO-8859-2</emphasis>
(<emphasis>latin2</emphasis>), pr<70>padne <emphasis>DOS codepage 852</emphasis>, <20>o s<>
<09>tandardy aj pre slovensk<73> diakritiku.</para>
<para>Pozor, p<>vodn<64> bal<61>k sa vol<6F> <application>kbd</application>, ale existuje jeho roz<6F><7A>ren<65>
verzia, ktor<6F> sa objavuje v distrib<69>ci<63>ch -- <application>console-tools</application>.
Rozdiely medzi nimi s<> minim<69>lne, pre <application>kbd</application> budeme pou<6F><75>va<76> pr<70>kaz
<command>setfont</command>, pre <application>console-tools</application> zase
<command>consolechars</command>. Taktie<69>, n<>zvy dod<6F>van<61>ch fontov sa trochu odli<6C>uj<75>, tak<61>e
budem uv<75>dza<7A> ekvivalenty pre oba bal<61>ky.</para>
</section> <!-- console-fonts-fonts -->
<section id="console-fonts-theory">
<title>Ako fonty funguj<75></title>
<para>Existuje nieko<6B>ko s<>borov<6F>ch form<72>tov na ukladanie fontov, princ<6E>p je v<>ak rovnak<61> --
s<>bor obsahuje 256 obr<62>zkov (<foreignphrase>glyphs</foreignphrase>), z ktor<6F>ch v<>etky maj<61>
rovnak<61> rozmer (napr. 8x16 bodov -- ve<76>kos<6F> fontu) a ka<6B>d<EFBFBD> zobrazuje jeden znak.</para>
<para>Aby n<>m t<>ch 256 obr<62>zkov bolo na nie<69>o dobr<62>ch, je treba font zo s<>boru zavies<65> do
znakov<6F>ho gener<65>tora videokarty. Na to sl<73><6C>i jeden z pr<70>kazov
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<cmdsynopsis>
<command>setfont</command>
<arg choice="plain"><replaceable>meno-fontu</replaceable></arg>
</cmdsynopsis></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<cmdsynopsis>
<command>consolechars</command>
<arg choice="plain">-f <replaceable>meno-fontu</replaceable></arg>
</cmdsynopsis></para>
</listitem>
</varlistentry>
</variablelist></para>
<para><computeroutput>meno-fontu</computeroutput> m<><6D>e by<62> absol<6F>tna alebo relat<61>vna cesta k
s<>boru s fontom, alebo meno s<>boru, pokia<69> sa nach<63>dza v adres<65>ri <filename
class="directory">/usr/lib/kbd/consolefonts/</filename>, <20>i u<> s pr<70>ponou, alebo
bez.</para>
<para>Pre <20>ah<61>ie pochopenie t<>ch obr<62>zkov, sk<73>ste nahradi<64>
<computeroutput>meno-fontu</computeroutput> re<72>azcom <computeroutput>t850</computeroutput> a
sledujte v<>sledok na v<>etk<74>ch virtu<74>lnych konzol<6F>ch.</para>
<para>Nasp<73><70> k <20>tandardn<64>mu fontu sa v<>dy dostanete jedn<64>m z pr<70>kazov
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<screen>
sh$ setfont
</screen></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<screen>
sh$ consolechars -d
</screen></para>
</listitem>
</varlistentry>
</variablelist></para>
<para><3E>o sa presne deje? Program <command>setfont</command>/<command>consolechars</command>
zavedie v<>etk<74>ch 256 obr<62>zkov do znakov<6F>ho gener<65>tora
<acronym>EGA</acronym>/<acronym>VGA</acronym> karty. Od tohto momentu sa na v<>etk<74>ch
konzol<6F>ch bude znak s <acronym>ASCII</acronym> k<>dom napr. 65 vykreslova<76> ako <20>esdesiaty
piaty obr<62>zok z na<6E>eho s<>boru s fontom. E<>te raz pripom<6F>nam a dvakr<6B>t pod<6F>iarkujem, <20>e font
je v<>dy rovnak<61> pre v<>etky virtu<74>lne konzoly, na ktor<6F>ch zobrazuje znaky ten ist<73> znakov<6F>
gener<65>tor <acronym>EGA</acronym>/<acronym>VGA</acronym> karty.</para>
<para>D<>le<6C>it<69> je uvedomi<6D> si, <20>e interne ide naozaj len o obr<62>zky a tvar niektor<6F>ho znaku vo
fonte nem<65> ni<6E> spolo<6C>n<EFBFBD>ho s jeho ASCII k<>dom. Ak by ste si sami vytvorili nejak<61> font (v
dokument<6E>cii ku <application>kbd</application>/<application>console-tools</application> m<>te
inform<72>cie o v<>etk<74>ch form<72>toch), v ktorom by mal ten <20>esdesiaty piaty obr<62>zok tvar p<>smena
<computeroutput>z</computeroutput>, po jeho natiahnut<75> sa v<>m bude pri zadan<61>
<keycombo><keycap>Alt</keycap><keycap>6</keycap><keycap>5</keycap></keycombo>, <20>o je
<acronym>ASCII</acronym> k<>d p<>smena <computeroutput>A</computeroutput>, zobrazova<76> znak
<computeroutput>z</computeroutput>. Ale ak tento znak ulo<6C><6F>te do s<>boru, v tomto sa bude
nach<63>dza<7A> bajt s hodnotou 65, teda p<>smeno <computeroutput>A</computeroutput>.</para>
</section> <!-- console-fonts-theory -->
<section id="console-fonts-latin2">
<title>Fonty ISO-8859-2</title>
<para>Toto vyu<79><75>va <20>tandard <emphasis>ISO-8859-2</emphasis> (a in<69>) - spolo<6C>n<EFBFBD> znaky s
<acronym>ASCII</acronym> vykresl<73> rovnako a znaky <20>pecifick<63> pre t<> ktor<6F> abecedu
<quote>namapuje</quote> na menej pou<6F><75>van<61> znaky <acronym>ASCII</acronym> tabu<62>ky. Kam
presne ktor<6F> norma umiest<73>uje znaky s diakritikou, n<>s zauj<75>ma<6D> nemus<75> (pokia<69> nevytv<74>rame
vlastn<74> fonty), hlavn<76> je, <20>e napr. anglick<63> text je nezmenen<65> (angli<6C>tina m<> v<>etky znaky
spolo<6C>n<EFBFBD> so sloven<65>inou) a slovensk<73> text u<> viac neobsahuje hl<68>pe znaky, ktor<6F> so
sloven<65>inou nemaj<61> ni<6E> spolo<6C>n<EFBFBD>.</para>
<para>Slovensk<73> (ISO-8859-2) fonty, ktor<6F> s<> s<><73>as<61>ou bal<61>kov <application>kbd</application>
a <application>console-tools</application>:
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>lat2-{08,10,12,14,16}, lat2a-16, iso02.{08,14,16}</para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>lat2-{08,10,12,14,16}, lat2u-16, iso02.f{08,14,16}</para>
</listitem>
</varlistentry>
</variablelist></para>
<para>Na zavedenie fontu pou<6F>ite pr<70>kaz
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<screen>
sh$ setfont meno-zo-zoznamu
</screen></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<screen>
sh$ consolechars -f meno-zo-zoznamu
</screen></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>Odpor<6F><72>am pou<6F><75>va<76> <computeroutput>lat2a-16</computeroutput>, resp.
<computeroutput>lat2u-16</computeroutput>. Ostatn<74> fonty maj<61> bezchybn<62> zobrazovanie
slovensk<73>ch znakov, probl<62>m v<>ak nast<73>va pri aplik<69>ci<63>ch, ktor<6F> vyu<79><75>vaj<61> znaky na kreslenie
r<>m<EFBFBD>ekov (napr. <command>mc</command>).</para>
<para><3E>o sa t<>ka fontov <computeroutput>iso02.*</computeroutput> z bal<61>ka
<application>kbd</application>, treba pri nich pou<6F>i<EFBFBD> argument pr<70>kazu
<command>setfont</command> <computeroutput>-m latin2u.trans</computeroutput>. Tak<61>e cel<65>
pr<70>kaz na zavedenie niektor<6F>ho z t<>chto fontov je:
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<screen>
sh$ setfont iso02.16 -m latin2u.trans
</screen></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<screen>
sh$ consoletrans -f lat2u-16 -m iso02
</screen></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>V s<>bore <filename>latin2u.trans</filename> (<filename>iso02.acm</filename>) sa nach<63>dza
tzv. <foreignphrase>Aplication-Charset Map</foreignphrase> (<acronym>ACM</acronym>), ak<61>si
prevodn<64> tabu<62>ka, ktor<6F> obsahuje riadok pre ka<6B>d<EFBFBD> znak fontu a jeho podobu v k<>dovan<61>
<acronym>UTF-8</acronym>.</para>
</section> <!-- console-fonts-latin2 -->
<section id="console-fonts-autoload">
<title>Automatick<63> zav<61>dzanie fontov</title>
<para> Ak ste si na<6E>li svoj font, ktor<6F> chcete pou<6F><75>va<76> a ma<6D> ho automaticky zaveden<65> v<>dy pri
<09>tarte, nie je ni<6E> <20>ah<61>ie. Inicializa<7A>n<EFBFBD> skript <filename>rc.sysinit</filename> rob<6F> asi
toto: skontroluje, <20>i existuje s<>bor <filename>/etc/sysconfig/i18n</filename> a program
(skript) <filename>/sbin/setsysfont</filename>. Ak <20>no, spust<73>
<command>setsysfont</command>. Ten na<6E><61>ta <filename>/etc/sysinfo/i18n</filename> a pod<6F>a
premenn<6E>ch definovan<61>ch v tomto s<>bore pr<70>kazom <command>consolechars</command> alebo
<command>setfont</command> zavedie font.</para>
<para>Tak<61>e sta<74><61> nastavi<76> spr<70>vne premenn<6E> v s<>bore <filename>/etc/sysconfig/i18n</filename>
a skript <filename>/sbin/setsysfont</filename> urob<6F> v<>etko za n<>s. Tento skript mo<6D>no
spusti<74> kedyko<6B>vek chcete zavies<65> font nastaven<65> ako <20>tandardn<64> pre syst<73>m.</para>
<para>Premenn<6E> v s<>bore <filename>/etc/sysinit/i18n</filename> s<> (pou<6F><75>vajte len men<65> s<>borov
bez cesty a bez pr<70>pony!):
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<programlisting>
SYSFONT=lat2a-16
</programlisting></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<programlisting>
SYSFONT=lat2u-16
SYSFONTACM=iso02
</programlisting></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>Skript<70>k <command>setsysfont</command> obsahuj<75> oba bal<61>ky a kedyko<6B>vek m<><6D>ete zavies<65>
font nastaven<65> ako syst<73>mov<6F> v s<>bore <filename>/etc/sysinit/i18n</filename> jednoduch<63>m
zadan<61>m
<screen>
sh$ /sbin/setsysfont
</screen></para>
<para>Pod<6F>a toho, <20>o sme si hovorili o tom, <20>e pre v<>etky virtu<74>lne konzoly m<><6D>e by<62> nastaven<65>
len jeden spolo<6C>n<EFBFBD> font, nem<65> ve<76>k<EFBFBD> zmysel zav<61>dza<7A> nastavovanie fontu zvlṻ pre ka<6B>d<EFBFBD>ho
u<><75>vate<74>a. S t<>m s<>vis<69> aj fakt, <20>e nastavenie fontu sa vz<76>ahuje k dan<61>mu po<70><6F>ta<74>u, pri
ktorom pr<70>ve sed<65>te a nie k tomu, ku ktor<6F>mu ste pripojen<65> napr. cez
<application>ssh</application>.</para>
<para>Predsa len si viem predstavi<76> pr<70>pad, ke<6B> niektor<6F> z viacer<65>ch pou<6F><75>vate<74>ov jedn<64>ho
po<70><6F>ta<74>a potrebuje odli<6C>n<EFBFBD> font. V tom pr<70>pade m<><6D>e vlo<6C>i<EFBFBD> pr<70>kaz na zav<61>dzanie fontov do
svojich skriptov, ktor<6F> vykon<6F>va shell pri prihl<68>sen<65> a odhl<68>sen<65>. Pre bash by to mohlo
vyzera<72> takto:
<variablelist>
<varlistentry>
<term><filename>~/.bash_profile</filename>:</term>
<listitem>
<para>
<programlisting>
if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && ! [ -f ~/.font ]; then
setfont -o ~/.font gr928a-8x16
fi
</programlisting></para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>~/.bash_logout</filename>:</term>
<listitem>
<para>
<programlisting>
if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && [ -f ~/.font ]; then
setfont ~/.font
rm -f ~/.font
fi
</programlisting></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>Vonkoncom to nie je ide<64>lne rie<69>enie, ale svoj <20><>el spln<6C> (minim<69>lne po moment prv<72>ho
odhl<68>senia). Trochu sa s t<>m pozab<61>vajte, aby sa font (a rozlo<6C>enie kl<6B>ves) menilo len pri
prvom prihl<68>sen<65> a poslednom odhl<68>sen<65>, tie<69> setfont pod iXami nem<65> ve<76>mi zmysel a tak... V
Tips-HOWTO je uveden<65> sp<73>sob, ako zisti<74>, na ko<6B>k<EFBFBD>ch virtu<74>lnych konzol<6F>ch je e<>te u<><75>vate<74>
prihl<68>sen<65>.</para>
<para>In<49><6E>, aby bolo jasn<73>, toto v<>m bude fungova<76> len na lok<6F>lnom stroji - zamyslite sa,
pre<72>o asi <command>setfont</command> (aj <command>loadkeys</command>) nefunguje cez
vzdialen<65> termin<69>l a <20>i by ste z toho nie<69>o mali, keby to tak nebolo.</para>
<para>Ak to s tak<61>mto rie<69>en<65>m mysl<73>te v<><76>ne, tak sk<73>r uva<76>ujte nad modifik<69>ciou skriptu
<filename>/etc/profile.d/lang.sh</filename>, kde by sa kontroloval aj obsah u<><75>vate<74>sk<73>ho
s<>boru <filename>~/.i18n</filename> a pod<6F>a toho by sa zaviedol skript, popis rozlo<6C>enia
kl<6B>ves, pr<70>padne nejak<61> premenn<6E>...</para>
</section> <!-- console-fonts-autoload -->
</section> <!-- console-fonts -->
<section id="console-kbd">
<title>Slovensk<73> kl<6B>vesnica na textovej konzole</title>
<para>Ke<4B> je slovensk<73> font na konzole rozbehan<61> a na<6E>e n<>rodn<64> znaky sa zobrazuj<75> spr<70>vne, m<>me
so sloven<65>inou probl<62>m <20><>slo dva - ako tam tie znaky dosta<74>? Keby ste si chceli tento s<>bor
len pre<72><65>ta<74> bez potreby n<>slednej nav<61>tevy psychiatra, sta<74>ilo by zavies<65> nejak<61> font so
slovenskou podporou. Ale ke<6B><65>e ste uvedomel<65> linux<75>k&nbsp;/&nbsp;uvedomel<65> linux<75><78>ka, hne<6E>
chcete do <citetitle>Slovak-HOWTO</citetitle> prispie<69> a pomocou kl<6B>vesnice p<>sa<73> slovensk<73>
text. Na to potrebujete s tou kl<6B>vesnicou nie<69>o urobi<62>.</para>
<section id="console-kbd-kmap">
<title>Popis rozlo<6C>enia kl<6B>ves (keymap)</title>
<para>Adres<65>re <filename class="directory">/usr/lib/kbd/keymaps/i386/qwertz/</filename> a
<filename class="directory">qwerty/</filename> obsahuj<75>
po nain<69>talovan<61> bal<61>ka
<application>kbd</application>/<application>console-tools</application> aj popisy
slovensk<73>ho rozlo<6C>enia kl<6B>ves. Pre n<>s s<> zauj<75>mav<61> s<>bory
<simplelist>
<member><filename>sk-prog-qwerty.map.gz</filename></member>
<member><filename>sk-qwerty.map.gz</filename></member>
<member><filename>sk-prog-qwertz.map.gz</filename></member>
<member><filename>sk-qwertz.map.gz</filename></member>
</simplelist></para>
<para>Tieto s<>bory obsahuj<75> defin<69>cie rozlo<6C>enia kl<6B>ves pre slovensk<73> jazyk, pri<72>om rozdiely
medzi nimi s<> v umiestnen<65> kl<6B>ves <keycap>Y</keycap> a <keycap>Z</keycap> a po<70>te
slovensk<73>ch znakov, ktor<6F> pomocou nich mo<6D>no nap<61>sa<73> priamo (bez m<>tvych kl<6B>ves). Najviac sa
na slovensk<73> p<>sac<61> stroj podob<6F> <computeroutput>sk-qwertz</computeroutput>, najmen<65>ie zmeny
oproti americkej kl<6B>vesnici s<> zase v <computeroutput>sk-prog-qwerty</computeroutput>.
</para>
<para>S<>bory v adres<65>ri <filename class="directory">/usr/lib/kbd/keymaps/i386/include/
</filename> obsahuj<75> popis z<>kladn<64>ch rozlo<6C>en<65> kl<6B>ves (<computeroutput>azerty
</computeroutput>, <computeroutput>qwerty</computeroutput>, <computeroutput>qwertz
</computeroutput>), pr<70>davn<76>ch kl<6B>ves (<computeroutput>keypad</computeroutput>,
<computeroutput>windowkeys</computeroutput>), pr<70>padne probl<62>mov<6F>ch kl<6B>ves (<computeroutput>
delete</computeroutput>, <computeroutput>backspace</computeroutput>, <computeroutput>ctrl
</computeroutput>). S<>bory <filename>linux-*.inc.gz</filename> s<> <20>pecifick<63> pre linux
(teda nie pre jazyk). S<> to napr. k<><6B><EFBFBD>e (<keycap>F1</keycap>-<keycap>F12</keycap>,
kombinovan<61>m s <keycap>Ctrl</keycap> a <keycap>Shift</keycap> a<> po <keycap>F48</keycap>),
<keycombo><keycap>Shift</keycap> <keycap>PgUp</keycap></keycombo> a <keycombo><keycap>Shift
</keycap> <keycap>PgDown</keycap></keycombo>, at<61>.</para>
<para>Keymapy <filename>*.inc.gz</filename> nepopisuj<75> kompletn<74> rozlo<6C>enie kl<6B>vesnice, ale
len niektor<6F>ch jej <20>ast<73>. Vyu<79><75>vaj<61> sa pri prip<69>jan<61>
(<foreignphrase>include</foreignphrase>) zo s<>borov <filename>*.map.gz</filename>, <20>o je
v<>hodn<64> z d<>vodu jednoduch<63>ej konfigur<75>cie kl<6B>vesnice. Napr<70>klad zmenou jedn<64>ho riadku v
s<>bore s rozlo<6C>en<65>m <computeroutput>sk-qwerty</computeroutput> m<><6D>me dosta<74> rozlo<6C>enie
qwertz, pr<70>padne (to asi vyu<79>ijete) jednoducho odstavi<76> znaky <keycap>euro</keycap> a
<keycap>cent</keycap>, ktor<6F> (zatia<69>?) nepotrebujeme a zbyto<74>ne n<>m zaberaj<61> znaky
<keycap>E</keycap> a <keycap>C</keycap>.</para>
<para>Na zavedenie s<>boru s popisom rozlo<6C>enia kl<6B>ves sl<73><6C>i nasledovn<76> pr<70>kaz:
<cmdsynopsis>
<command>loadkeys</command>
<arg choice="plain"><replaceable>nazov</replaceable></arg>
</cmdsynopsis>
kde <computeroutput>nazov</computeroutput> m<><6D>e by<62> absol<6F>tna alebo relat<61>vna cesta ku
keymap s<>boru, alebo meno s<>boru, pokia<69> sa nach<63>dza v adres<65>ri <filename class="directory">
/usr/lib/kbd/keymaps/</filename>, <20>i u<> s pr<70>ponou, alebo bez.</para>
<para><3E>tandardn<64> slovensk<73> popisy rozlo<6C>enia kl<6B>ves n<>jdeme vo vy<76><79>ie spom<6F>nan<61>ch
<filename>*.map.gz</filename> s<>boroch. Ak sa chcete vr<76>ti<74> k <20>tandardn<64>mu rozlo<6C>eniu,
pr<70>kaz
<screen>
sh$ loadkeys -d
</screen>
zavedie p<>vodn<64>, ktor<6F> je ulo<6C>en<65> v s<>bore <filename>defkeymap.map.gz</filename> niekde
medzi ostatn<74>mi keymap s<>bormi. Predt<64>m ale nikdy nezabudnite zmeni<6E> re<72>im slovenskej
kl<6B>vesnice na <acronym>US</acronym> znaky, tzn. <keycap>1</keycap> d<>va
<computeroutput>1</computeroutput> a nie <computeroutput>+</computeroutput> at<61>. Ak by ste
predsa zabudli, je mo<6D>n<EFBFBD>, <20>e kl<6B>vesy, kde sa nach<63>dzali slovensk<73> znaky, nebud<75> fungova<76>
spr<70>vne (v skuto<74>nosti bud<75> fungova<76> spr<70>vne, ale v<>m sa to nebude p<><70>i<EFBFBD>). Vtedy znovu
zave<76>te predchadz<64>j<EFBFBD>cu keymapu (na nefunk<6E>n<EFBFBD> kl<6B>vesy pou<6F>ite <keycap>AltGr</keycap> - prav<61>
<keycap>Alt</keycap>) a kl<6B>vesou <keycap>Pause/Break</keycap> v<>etko naprav<61>te. Potom m<><6D>ete
znova zavies<65> defkeymap.</para>
<para>Pokia<69> sa v<>m nep<65><70>i ani jeden zo <20>tandardn<64>ch keymap s<>borov pre sloven<65>inu, <20>o je
pravdepodobn<62> v<>aka riadku
<programlisting>
include "euro"
</programlisting>
v include s<>boroch <filename>qwerty-layout.inc.gz</filename> aj
<filename>qwertz-layout.inc.gz</filename>, m<><6D>ete k<>udne pozmeni<6E> existuj<75>ci s<>bor s popisom
rozlo<6C>enia kl<6B>ves, pr<70>padne vytvori<72> nov<6F>. Nebojte sa, je to zlo<6C>it<69>! Nebudem to tu
rozpisova<76> v<>etko, prezrite si zop<6F>r kmap s<>borov, pre<72><65>tajte manu<6E>lov<6F> str<74>nku keymaps(5) a
mali by ste to <20>ahko pochopi<70>.</para>
<para>My si povieme len o z<>kladn<64>ch veciach, ktor<6F> n<>m pom<6F><6D>u pozmeni<6E> existuj<75>ce kmap s<>bory
s popismi slovensk<73>ch kl<6B>vesn<73>c, aby ste si poradili s (mne zn<7A>mymi) komplik<69>ciami, alebo
upravili rozlo<6C>enie kl<6B>ves pod<6F>a svojho gusta.</para>
</section> <!-- console-kbd-kmap -->
<section id="console-kbd-include">
<title>Include a nespr<70>vna funkcia kl<6B>ves <keycap>E</keycap> a <keycap>C</keycap></title>
<para>Probl<62>m s <keycap>E</keycap> a <keycap>C</keycap> je sp<73>soben<65> zaveden<65>m jednotnej meny
v eur<75>pskej <20>nii. Na vine nie je ani tak <acronym>EU</acronym>, ale niekto, kto symboly pre
<keycap>euro</keycap> a <keycap>cent</keycap> umiestnil na <keycombo><keycap>AltGr</keycap>
<keycap>E</keycap></keycombo> a <keycombo><keycap>AltGr</keycap><keycap>C</keycap>
</keycombo>, <20>o s<> na<6E>e oby<62>ajn<6A> <keycap>E</keycap> a <keycap>C</keycap>. Toti<74>, n<>rodn<64>
kl<6B>vesnice s<> v<><76><EFBFBD>inou rie<69>en<65> tak, <20>e po zaveden<65> s<>boru na<6E>alej funguje americk<63>
rozlo<6C>enie a na prep<65>nanie do n<>rodn<64>ho re<72>imu sa pou<6F><75>va kl<6B>vesa <keycap>Pause</keycap>,
alebo m<><6D>me zad<61>va<76> n<>rodn<64> kl<6B>vesy pri s<><73>asnom dr<64>an<61> kl<6B>vesy <keycap>AltGr</keycap>
(prav<61> <keycap>Alt</keycap>). S<>bor <filename>euro.inc</filename>, ktor<6F> definuje tieto dva
probl<62>mov<6F> symboly, je pripojen<65> zo s<>boru <filename>qwerty-layout.inc</filename>, ktor<6F>
zase prip<69>jaj<61> samotn<74> slovensk<73> keymapy (<filename>sk-qwerty</filename>,
<filename>sk-prog-qwertz</filename>, &hellip;).</para>
<para>Rie<69>enie je ve<76>mi jednoduch<63> - zeditujete <filename>qwerty-layout.inc</filename> (alebo
<filename>qwertz-layout.inc</filename>) a odkomentujete znakom
<computeroutput>&num;</computeroutput> riadok
<programlisting>
include "euro"
</programlisting></para>
</section> <!-- console-kbd-include -->
<section id="console-kbd-keycode">
<title>Keycode a definovanie kl<6B>ves</title>
<para>Predch<63>dzaj<61>ci probl<62>m s eurom mo<6D>no vyrie<69>i<EFBFBD> aj definovan<61>m znakov <keycap>E</keycap> a
<keycap>C</keycap> v samotnom s<>bore <filename>sk-qwerty.kmap.gz</filename> (alebo inom,
ktor<6F> pou<6F><75>vate) pomocou slova <computeroutput>keycode</computeroutput>:
<programlisting>
keycode 18 = e
keycode 46 = c
</programlisting></para>
<para>V keymap s<>boroch je pre ka<6B>d<EFBFBD> kl<6B>vesu (alebo aspo<70> pre ka<6B>d<EFBFBD>, ktor<6F> chceme
predefinova<76>) jeden riadok pribli<6C>ne tohto razenia:
<programlisting>
keycode 3 = two at lcaron two nul nul nul nul Meta_two Meta_two...
</programlisting></para>
<para><3E><>slo za <computeroutput>keycode</computeroutput> ozna<6E>uje ur<75>it<69> kl<6B>vesu a re<72>azce za
<computeroutput>=</computeroutput> hovoria o tom, ak<61> znak m<> ovl<76>da<64> kl<6B>vesnice generova<76>
pri stla<6C>en<65> tejto kl<6B>vesy, a to bu<62> samotnej, alebo v kombin<69>cii so <20>peci<63>lnymi kl<6B>vesmi
<keycap>Shift</keycap>, <keycap>AltGr</keycap>, <keycap>Control</keycap>,
<keycap>Alt</keycap>, <keycap>ShiftL</keycap>, <keycap>ShiftR</keycap>,
<keycap>Ctrl</keycap> a <keycap>CtrlR</keycap>. To n<>m d<>va 256 mo<6D>n<EFBFBD>ch znakov na ka<6B>d<EFBFBD>
kl<6B>vesu.</para>
<para>V<><56><EFBFBD>inou sa pozme<6D>uje len prv<72>ch 16 kombin<69>ci<63> modifik<69>torov. To je v<>znam riadku
<programlisting>
keymaps 0-15
</programlisting>
na za<7A>iatku kmap s<>borov.</para>
<para>V nasleduj<75>com zozname je t<>chto 16 kombin<69>ci<63> (po riadkoch):
<simplelist columns="4" type="horiz">
<member><3E>iadny</member>
<member><keycap>Shift</keycap></member>
<member><keycap>AltGr</keycap></member>
<member><keycombo><keycap>Shift</keycap><keycap>AltGr</keycap></keycombo></member>
<member><keycap>Control</keycap></member>
<member><keycombo><keycap>Shift</keycap><keycap>Control</keycap></keycombo></member>
<member><keycombo><keycap>AltGr</keycap><keycap>Control</keycap></keycombo></member>
<member><keycombo><keycap>Shift</keycap><keycap>AltGr</keycap><keycap>Control</keycap>
</keycombo></member>
<member><keycap>Alt</keycap></member>
<member><keycombo><keycap>Shift</keycap><keycap>Alt</keycap></keycombo></member>
<member><keycombo><keycap>AltGr</keycap><keycap>Alt</keycap></keycombo></member>
<member><keycombo><keycap>Shift</keycap><keycap>AltGr</keycap><keycap>Alt</keycap>
</keycombo></member>
<member><keycombo><keycap>Control</keycap><keycap>Alt</keycap></keycombo></member>
<member><keycombo><keycap>Shift</keycap><keycap>Control</keycap><keycap>Alt</keycap>
</keycombo></member>
<member><keycombo><keycap>AltGr</keycap><keycap>Control</keycap><keycap>Alt</keycap>
</keycombo></member>
<member><keycombo><keycap>Shift</keycap><keycap>AltGr</keycap><keycap>Control</keycap>
<keycap>Alt</keycap></keycombo></member>
</simplelist></para>
<para>Z h<>adiska slovenskej kl<6B>vesnice s<> d<>le<6C>it<69> len prv<72> <20>tyri - prv<72> dva s<> zvy<76>ajne
nezmenen<65> americk<63> znaky, napr. <computeroutput>two at</computeroutput>, <20>o je
<keycap>2</keycap> <keycap>@</keycap>, a druh<75> dva s<> znaky slovenskej abecedy, ktor<6F> bude
ovl<76>da<64> kl<6B>vesnice posiela<6C> aplik<69>ci<63>m ak pri stla<6C>en<65> tejto kl<6B>vesy budeme s<><73>asne dr<64>a<EFBFBD>
kl<6B>vesu <keycap>AltGr</keycap> (prav<61> <keycap>Alt</keycap>), napr. <computeroutput>lcaron
two</computeroutput>, <20>o je na<6E>e <keycap><3E></keycap> <keycap>2</keycap>.</para>
<para>Aby ste mohli vklada<64> slovensk<73> znaky, nemus<75>te cel<65> <20>as pridr<64>iava<76>
<keycap>AltGr</keycap> nosom, ale m<><6D>ete pou<6F>i<EFBFBD> <keycap>Pause/Break</keycap>, ktor<6F> v
kontexte s n<>rodn<64>mi kl<6B>vesnicami funguje ako <keycap>AltGr Lock</keycap>. Ch<43>pte to tak, <20>e
ke<6B> sa prepnete do slovensk<73>ho re<72>imu stla<6C>en<65>m <keycap>Pause/Break</keycap>, prv<72> a druh<75>
dva re<72>azce v ka<6B>dom riadku keycode sa vymenia, napr.
<programlisting>
two at lcaron two -> lcaron two two at
</programlisting></para>
<para>Vtedy m<><6D>ete pou<6F>i<EFBFBD> <keycap>AltGr</keycap> na zad<61>vanie znakov americkej kl<6B>vesnice,
alebo sa op<6F>tovn<76>m stla<6C>en<65>m <keycap>Pause/Break</keycap> prepn<70><6E> sp<73>t do
<acronym>US</acronym> re<72>imu.</para>
<para>Riadok pre kl<6B>vesu s k<>dom 41 (znaky <keycap>`</keycap> a <keycap>~</keycap>), m<> v
s<>bore <filename>sk-qwerty.map.gz</filename> nasledovn<76> tvar:
<programlisting>
keycode 41 = grave asciitilde dead_diaeresis dead_circumflex ...
</programlisting></para>
<para>Mne osobne sa nep<65><70>i, <20>e s<> tu umiestnen<65> m<>tve kl<6B>vesy <keycap>dead_diaeresis</keycap>
(dve bodky nad znakom) a <keycap>dead_circumflex</keycap> (m<>k<EFBFBD>e<EFBFBD>), preto<74>e ich nepotrebujem
--- <keycap><3E></keycap> aj <keycap><3E></keycap> na slovenskej kl<6B>vesnici predsa je. A keby aj
nebolo, na ich p<>sanie m<><6D>em k<>udne pou<6F>i<EFBFBD> m<>tvy kl<6B>ves m<>k<EFBFBD>e<EFBFBD>. O tom si bli<6C><69>ie povieme v
<09>asti o compose sekvenci<63>ch. Teraz chcem ma<6D> na tomto mieste znaky <keycap>;</keycap>
(semicolon) a <keycap><3E></keycap> (degree) tak, ako je to na popiske mojej kl<6B>vesnice. Zmen<65>m
teda riadok takto:
<programlisting>
keycode 41 = grave asciitilde semicolon degree ...
</programlisting></para>
<para>In<49><6E>, ten stupe<70> asi nie je stupe<70>, ale m<>tvy znak kr<6B><72>ku nad p<>smenom, napr. v <20>e<EFBFBD>tine
nad u, ale tak<61> kl<6B>ves je n<>m fakt nani<6E>. Rad<61>ej budeme p<>sa<73> stupne.</para>
<para>N<>zvy znakov, ktor<6F> sa pou<6F><75>vaj<61> pri definovan<61> jednotliv<69>ch kl<6B>ves si m<><6D>ete pre znaky
<acronym>ASCII</acronym> zisti<74> v s<>bore <filename>us.map.gz</filename>. <20><>seln<6C> k<>dy
v<>etk<74>ch kl<6B>ves v<>m vyp<79>uje program
<cmdsynopsis>
<command>showkey</command>
</cmdsynopsis></para>
<para>Pravidl<64> pre n<>zvy znakov <20>pecifick<63>ch pre sloven<65>inu v kmap s<>boroch:
<orderedlist>
<listitem>
<para>Prv<72> p<>smeno v n<>zve ur<75>uje <acronym>ASCII</acronym> znak, pre ktor<6F> chceme pou<6F>i<EFBFBD>
diakritiku.</para>
</listitem>
<listitem>
<para>K nemu prid<69>me identifik<69>tor diakritick<63>ho znamienka:
<simplelist>
<member>caron --- m<>k<EFBFBD>e<EFBFBD></member>
<member>acute --- d<><64>e<EFBFBD></member>
<member>diaeresis --- dve bodky nad</member>
<member>circumflex --- vok<6F><6B></member>
</simplelist></para>
<para>Napr<70>klad:
<simplelist>
<member>scaron = <keycap><3E></keycap></member>
<member>uacute = <keycap><3E></keycap></member>
<member>Ocircumflex = <keycap><3E></keycap></member>
</simplelist></para>
</listitem>
</orderedlist></para>
<para>N<>zvy <20>al<61><6C>ch znakov <20>pecifick<63>ch pre sloven<65>inu:
<simplelist>
<member>0xa7 --- <keycap><3E></keycap> (paragraf)</member>
<member>degree --- <keycap><3E></keycap> stupe<70></member>
</simplelist></para>
<para>Pre spr<70>vnu interpret<65>ciu identifik<69>torov znakov s diakritikou je nutn<74> na za<7A>iatku kmap
s<>boru ur<75>i<EFBFBD> k<>dov<6F> str<74>nku, pre ktor<6F> bude ur<75>en<65> tento popis rozlo<6C>enia kl<6B>ves. Ide o to,
<09>e ten ist<73> znak m<><6D>e ma<6D> v r<>znych k<>dov<6F>ch str<74>nkach in<69> <acronym>ASCII</acronym> k<>d.
Implicitn<74> hodnota je <constant>iso-8859-1</constant>, teda pre slovensk<73> keymapy je nutn<74>
vlo<6C>i<EFBFBD> riadok:
<programlisting>
charset "iso-8859-2"
</programlisting></para>
<para>E<>te jeden pr<70>klad: ak chcete pou<6F><75>va<76> slovensk<73> rozlo<6C>enie
<computeroutput>qwertz</computeroutput> a americk<63> rozlo<6C>enie
<computeroutput>qwerty</computeroutput>, potrebujete vymeni<6E> znaky <keycap>Y</keycap> a
<keycap>Z</keycap>:
<programlisting>
keycode 21 = y Y z Z
keycode 44 = z Z y Y
</programlisting></para>
<para>Na prv<72> poh<6F>ad to m<><6D>e fungova<76> dobre, ale probl<62>m sa prejav<61> pri zapnutom <keycap>Caps
Lock</keycap> - znaky <keycap>Y</keycap> a <keycap>Z</keycap> sa st<73>le p<><70>u mal<61>mi
p<>smenami. Pri p<>san<61> popisov rozlo<6C>en<65> znakov mo<6D>no tak<61>to probl<62>m o<>etri<72> pridan<61>m p<>smena
<computeroutput>+</computeroutput> pred ka<6B>d<EFBFBD> p<>smeno v keycode riadku danej kl<6B>vesy.
P<>smeno <computeroutput>+</computeroutput> ur<75>uje nasledovn<76>mu p<>smenu atrib<69>t
<foreignphrase>letter</foreignphrase>, teda sa bude pri stla<6C>enom <keycap>Caps Lock</keycap>
p<>sa<73> ve<76>k<EFBFBD> p<>smeno. V<>etky p<>smen<65> <keycap>a</keycap>-<keycap>z</keycap>,
<keycap>A</keycap>-<keycap>Z</keycap> maj<61> tento atrib<69>t priraden<65> automaticky, ale to len v
pr<70>pade, <20>e maj<61> keycode riadok tvaru:
<programlisting>
keycode 21 = y
</programlisting></para>
<para>V na<6E>om pr<70>pade teda mus<75>me priradi<64> tento atrib<69>t v<>etk<74>m znakom explicitne. Tak<61>e,
kone<6E>n<EFBFBD> <20>prava keymapy bude:
<programlisting>
keycode 21 = +y +Y +z +Z
keycode 44 = +z +Z +y +Y
</programlisting></para>
<para>Pre v<>menu p<>smen toto rie<69>enie funguje spo<70>ahlivo, bohu<68>ia<69>, e<>te st<73>le neexistuje
sp<73>sob, ktor<6F>m by sa dalo dosiahnu<6E> napr<70>klad p<>sanie ve<76>k<EFBFBD>ch p<>smen s diakritikou pri
zapnutom <keycap>Caps Lock</keycap> jednoduch<63>m stl<74><6C>an<61>m ich kl<6B>ves, ako je to v slovenskom
popise rozlo<6C>enia kl<6B>ves pre <application>X Window System</application>.</para>
</section> <!-- console-kbd-keycode -->
<section id="console-kbd-dead">
<title>M<>tve kl<6B>vesy a sekvencie compose</title>
<para>S m<>tvymi kl<6B>vesami s<>visia v kmap s<>boroch riadky tvaru
<programlisting>
compose 'c1' 'c2' to 'c3'
</programlisting></para>
<para>Predstavme si m<>tve znaky ako <20>plne oby<62>ajn<6A> znaky s t<>m rozdielom, <20>e ovl<76>da<64>
kl<6B>vesnice ich neposiela aplik<69>ci<63>m, ale zostan<61> niekde <quote>visie<69></quote>, k<>m z
kl<6B>vesnice nepr<70>de <20>al<61><6C> znak. Ovl<76>da<64> kl<6B>vesnice nepo<70>le ani tento, ale pok<6F>si sa spoji<6A> ho
s predch<63>dzaj<61>cim m<>tvym znakom a a<> v<>sledok spojenia pust<73> <20>alej. No, a ako m<> to spojenie
uskuto<74>ni<6E>, to mu presne hovoria riadky <computeroutput>compose</computeroutput> v keymap
s<>boroch.</para>
<para>V nasleduj<75>cej tabu<62>ke je zoznam m<>tvych znakov pou<6F><75>van<61>ch v sloven<65>ine, spolu s
v<>znamom a znakom, ktor<6F>m sa ozna<6E>uj<75> v compose sekvenci<63>ch.
<table id="console-kbd-dead.tables.dead">
<title id="console-kbd-dead.tables.dead.title">M<>tve kl<6B>vesy</title>
<tgroup cols="3">
<thead>
<row>
<entry>N<>zov</entry>
<entry>V<>znam</entry>
<entry>Compose</entry>
</row>
</thead>
<tbody>
<row>
<entry>dead_acute</entry>
<entry>d<><64>e<EFBFBD></entry>
<entry>\'</entry>
</row>
<row>
<entry>dead_circumflex</entry>
<entry>m<>k<EFBFBD>e<EFBFBD></entry>
<entry>^</entry>
</row>
<row>
<entry>dead_diaeresis</entry>
<entry>dve bodky nad</entry>
<entry>"</entry>
</row>
</tbody>
</tgroup>
</table></para>
<procedure>
<title>Postup pri p<>sani compose sekvenci<63></title>
<step>
<para>Ka<4B>d<EFBFBD> compose sekvencia sa za<7A><61>na k<><6B><EFBFBD>ov<6F>m slovom
<computeroutput>compose</computeroutput>.</para>
</step>
<step>
<para>Nasleduje compose znak m<>tvej kl<6B>vesy (pod<6F>a tabu<62>ky <xref
linkend="console-kbd-dead.tables.dead" endterm="console-kbd-dead.tables.dead.title">),
napr<70>klad <computeroutput>\'</computeroutput>.
</para>
<para>Druh<75> je znak, s ktor<6F>m chceme m<>tvu kl<6B>vesu kombinova<76>, napr<70>klad
<computeroutput>A</computeroutput>.</para>
<para>Za k<><6B><EFBFBD>ov<6F>m slovom <computeroutput>to</computeroutput> nasleduje v<>sledok spojenia
m<>tvej kl<6B>vesy a znaku bez diakritiky, teda <computeroutput><3E></computeroutput>.</para>
</step>
</procedure>
<para>Je praktick<63> ma<6D> pri vytv<74>ran<61> compose sekvenci<63> zaveden<65> slovensk<73> font, aby ste
v<>sledok mohli hne<6E> kontrolova<76>. Ve<56>kou pomocou je tie<69> mo<6D>nos<6F> pr<70>kazu
<command>loadkeys</command> <20><>ta<74> zo <20>tandardn<64>ho vstupu. Napr<70>klad:
<screen>
sh$ loadkeys
include "/usr/lib/kbd/keymaps/i386/include/windowkeys.map.gz"
keycode 41 = grave asciitilde semicolon dead_diaeresis
compose '"' 'a' to '<27>'
# ukon<6F>enie zad<61>vania: EOF - Ctrl-D
sh$
</screen></para>
<para>Popis aktu<74>lneho rozlo<6C>enia kl<6B>ves m<><6D>ete ulo<6C>i<EFBFBD> do s<>boru pr<70>kazom
<screen>
sh$ dumpkeys > subor
</screen></para>
<para>Ak nem<65>te zaveden<65> slovensk<73> popis rozlo<6C>enia kl<6B>ves, mus<75>te zad<61>va<76> tieto znaky ako
<keycap>Alt</keycap> sekvencie, popr<70>pade vklada<64> ich hex k<>dy v tvare
<keycode>0xed</keycode> pre <keycap><3E></keycap>. V<>pis znakov aktu<74>lneho fontu spolu s ich
hex k<>dmi v<>m urob<6F> program
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<cmdsynopsis>
<command>showfont</command>
</cmdsynopsis></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<cmdsynopsis>
<command>showcfont</command>
</cmdsynopsis></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>E<>te raz na<6E>a compose sekvencia a nejak<61> navy<76>e:
<programlisting>
compose '\'' 'A' to '<27>' # dlh<6C> A cez d<><64>e<EFBFBD>
compose '^' 'O' to '<27>' # O s vok<6F><6B>om cez m<>k<EFBFBD>e<EFBFBD>
compose '^' 'a' to '<27>' # <20>irok<6F> a cez m<>k<EFBFBD>e<EFBFBD>,
compose '^' 'A' to 0x84 # ...preto nepotrebujeme dead_diaeresis
</programlisting></para>
<para>Mimochodom, v s<>bore <filename>/usr/lib/kbd/keymaps/compose/compose.latin2</filename>
m<>te zoznam compose sekvenci<63> pre normu <acronym>ISO-8859-2</acronym>.</para>
</section> <!-- console-kbd-dead -->
<section id="console-kbd-autoload">
<title>Automatick<63> zav<61>dzanie keymap s<>boru</title>
<para>Na nastavenie rozlo<6C>enia kl<6B>vesnice, ktor<6F> chceme zavies<65> pri <20>tarte syst<73>mu, n<>m sl<73><6C>i
s<>bor <filename>/etc/sysconfig/keyboard</filename>. Pre Slov<6F>ka ako repa by mal vyzera<72>
minim<69>lne takto:
<programlisting>
KEYTABLE=sk-qwerty # zavedie rozlo<6C>enie kl<6B>ves sk-qwerty
KBCHARSET=iso-8859-2 # ...a spom<6F>nan<61> s<>bor compose.latin2
</programlisting></para>
<para>Nastavenie kl<6B>vesnice pri <20>tarte m<> na starosti skript <command>keytable</command>,
ktor<6F> je volan<61> priamo z <filename>rc.sysinit</filename>, tak<61>e netreba vytv<74>ra<72> linky v
adres<65>roch pre runlevel <constant>3/multiuser</constant>, pr<70>padne <constant>5/X</constant>.
</para>
<para>V dokument<6E>cii k <application>initscripts</application> sa p<><70>e: <quote>Ak ulo<6C><6F>te popis
rozlo<6C>enia kl<6B>ves (pou<6F>it<69>m <command>dumpkeys</command>) do s<>boru
<filename>/etc/sysconfig/console/default.kmap</filename>, zavedie sa pri <20>tarte syst<73>mu e<>te
pred prip<69>jan<61>m/kontrolou s<>borov<6F>ch syst<73>mov. To m<><6D>e by<62> u<>ito<74>n<EFBFBD>, ak potrebujete zada<64>
heslo roota v pr<70>pade probl<62>mov. Mus<75> to by<62> <quote>dumpnut<75></quote> popis rozlo<6C>enia kl<6B>ves
a nie skop<6F>rovan<61> s<>bor z <filename class="directory">/usr/lib/kbd/keytables/</filename>,
preto<74>e tie <20>asto e<>te vkladaj<61> (include) in<69> popisy z tejto adres<65>rovej
<09>trukt<6B>ry.</quote></para>
<para>Po pripojen<65> s<>borov<6F>ch syst<73>mov, v pr<70>pade, <20>e existuje spustite<74>n<EFBFBD> s<>bor
<filename>/etc/rc.d/init.d/keytable</filename> a adres<65>r
<filename class="directory">/usr/lib/kbd/keymaps/</filename>, vykon<6F> sa pr<70>kaz
<screen>
sh# /etc/rc.d/init.d/keytable start
</screen></para>
<para>Tento u<> zavedie popis rozlo<6C>enia kl<6B>ves tak, ako to m<>te ur<75>en<65> premenn<6E>mi v s<>bore
<filename>/etc/sysconfig/keyboard</filename>, preto nemus<75>te vytv<74>ra<72> odkazy v jednotliv<69>ch
<filename class="directory">rc[1-5].d/</filename> adres<65>roch.</para>
<para>To, <20>o sme si hovorili o zmene fontu pri prihl<68>sen<65> nejak<61>ho u<><75>vate<74>a na virtu<74>lnej
konzole, sa d<> aplikova<76> aj na rozlo<6C>enie kl<6B>ves. <20>plne najjednoduch<63>ie rie<69>enie (ktor<6F> sa
pri prvom odhl<68>sen<65> po<70>le do kr<6B>kov) je asi tak<61>to:
<variablelist>
<varlistentry>
<term><filename>~/.bash_profile</filename>:</term>
<listitem>
<para>
<programlisting>
if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && ! [ -f ~/.keymap ]; then
dumpkeys > ~/.keymap
loadkeys gr.map
fi
</programlisting></para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>~/.bash_logout</filename>:</term>
<listitem>
<para>
<programlisting>
if tty 2>/dev/null |grep '/dev/tty[0-9]*$' &>/dev/null && [ -f ~/.keymap ]; then
loadkeys ~/.keymap
rm -f ~/.keymap
fi
</programlisting></para>
</listitem>
</varlistentry>
</variablelist></para>
</section> <!-- console-kbd-autoload -->
</section> <!-- console-kbd -->
<section id="console-summary">
<title>Zhrnutie nastaven<65> konzoly</title>
<para>Pokia<69> som sa niekde nesekol, tak minim<69>lne v distrib<69>ci<63>ch
<systemitem class="osname">RedHat</systemitem> a
<systemitem class="osname">Mandrake</systemitem> by po t<>chto zmen<65>ch mala do pohody za<7A>lapa<70>
slovensk<73> podpora (fonty + kl<6B>vesnica).
<variablelist>
<varlistentry>
<term><filename>/etc/sysconfig/i18n</filename>:</term>
<listitem>
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<programlisting>
SYSFONT=lat2a-16
</programlisting></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<programlisting>
SYSFONT=lat2u-16
SYSFONTACM=iso02
</programlisting></para>
</listitem>
</varlistentry>
</variablelist>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>/etc/sysconfig/keyboard</filename>:</term>
<listitem>
<para>
<programlisting>
KEYTABLE=sk-qwertz
KBCHARSET=iso-8859-2
</programlisting></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>Tie<69>, ak zad<61>vate rootovsk<73> heslo s pou<6F>it<69>m in<69>ho rozlo<6C>enia kl<6B>ves ako je <20>tandardn<64>
(<computeroutput>us</computeroutput>), vlo<6C>te si jeho popis do s<>boru
<filename>/etc/sysconfig/console/default.kmap</filename>. Pozor, nesmiete len tak skop<6F>rova<76>
s<>bor, alebo vytvori<72> link! Ak chcete pou<6F>i<EFBFBD> napr<70>klad rozlo<6C>enie
<computeroutput>sk-qwertz</computeroutput>, urobte to takto:
<screen>
sh$ loadkeys sk-qwertz
sh# dumpkeys >/etc/sysconfig/console/default.kmap
</screen></para>
<para>Ak chcete nastavi<76> slovensk<73> font a kl<6B>vesnicu len jednorazovo, tieto pr<70>kazy by to mali
dok<6F>za<7A>:
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<screen>
sh$ setfont lat2a-16
sh$ loadkeys sk-qwertz
</screen></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<screen>
sh$ consolechars -f lat2u-16 -m iso02
sh$ loadkeys sk-qwertz
</screen></para>
</listitem>
</varlistentry>
</variablelist></para>
<para>...a nasp<73><70> na <20>tandardn<64> nastavenia:
<variablelist>
<varlistentry>
<term><application>kbd</application>:</term>
<listitem>
<para>
<screen>
sh$ setfont
sh$ loadkeys -d
</screen></para>
</listitem>
</varlistentry>
<varlistentry>
<term><application>console-tools</application>:</term>
<listitem>
<para>
<screen>
sh$ consolechars -d
sh$ loadkeys -d
</screen></para>
</listitem>
</varlistentry>
</variablelist></para>
</section> <!-- console-summary -->
</section> <!-- console -->