mirror of https://github.com/tLDP/LDP
916 lines
38 KiB
Plaintext
916 lines
38 KiB
Plaintext
<!--DOCTYPE section PUBLIC "-//OASIS//DTD DocBook V4.1//EN"-->
|
|
<!-- $Id$ -->
|
|
|
|
<section id="console">
|
|
<title>Nastavenia konzoly</title>
|
|
|
|
<para>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 <quote>Zmysel ¾ivota, vesmíru a vôbec.</quote>
|
|
</para>
|
|
|
|
<section id="console-fonts">
|
|
<title>Slovenèina na výstupe textovej konzoly</title>
|
|
|
|
<section id="console-fonts-fonts">
|
|
<title>Fonty</title>
|
|
|
|
<para>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
|
|
<application>kbd</application>. Po jeho nain¹talovaní sú súbory s fontami umiestnené v
|
|
adresári <filename class="directory">/usr/lib/kbd/consolefonts/</filename>.</para>
|
|
|
|
<para>Pre nás sú dôle¾ité najmä súbory, ktoré majú v mene <filename>iso02</filename>,
|
|
<filename>lat2</filename>, <filename>latin2</filename> alebo èíslo <filename>852</filename>.
|
|
To naznaèuje, ¾e ide o fonty s podporou <emphasis>ISO-8859-2</emphasis>
|
|
(<emphasis>latin2</emphasis>), prípadne <emphasis>DOS codepage 852</emphasis>, èo sú
|
|
¹tandardy aj pre slovenskú diakritiku.</para>
|
|
|
|
<para>Pozor, pôvodný balík sa volá <application>kbd</application>, ale existuje jeho roz¹írená
|
|
verzia, ktorá sa objavuje v distribúciách -- <application>console-tools</application>.
|
|
Rozdiely medzi nimi sú minimálne, pre <application>kbd</application> budeme pou¾íva» príkaz
|
|
<command>setfont</command>, pre <application>console-tools</application> zase
|
|
<command>consolechars</command>. Taktie¾, názvy dodávaných fontov sa trochu odli¹ujú, tak¾e
|
|
budem uvádza» ekvivalenty pre oba balíky.</para>
|
|
</section> <!-- console-fonts-fonts -->
|
|
|
|
<section id="console-fonts-theory">
|
|
<title>Ako fonty fungujú</title>
|
|
|
|
<para>Existuje niekoµko súborových formátov na ukladanie fontov, princíp je v¹ak rovnaký --
|
|
súbor obsahuje 256 obrázkov (<foreignphrase>glyphs</foreignphrase>), z ktorých v¹etky majú
|
|
rovnaký rozmer (napr. 8x16 bodov -- veµkos» fontu) a ka¾dý zobrazuje jeden znak.</para>
|
|
|
|
<para>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
|
|
<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ô¾e by» absolútna alebo relatívna cesta k
|
|
súboru s fontom, alebo meno súboru, pokiaµ sa nachádza v adresári <filename
|
|
class="directory">/usr/lib/kbd/consolefonts/</filename>, èi u¾ s príponou, alebo
|
|
bez.</para>
|
|
|
|
<para>Pre µah¹ie pochopenie tých obrázkov, skúste nahradi»
|
|
<computeroutput>meno-fontu</computeroutput> re»azcom <computeroutput>t850</computeroutput> a
|
|
sledujte výsledok na v¹etkých virtuálnych konzolách.</para>
|
|
|
|
<para>Naspä» k ¹tandardnému fontu sa v¾dy dostanete jedným z prí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>Èo sa presne deje? Program <command>setfont</command>/<command>consolechars</command>
|
|
zavedie v¹etkých 256 obrázkov do znakového generátora
|
|
<acronym>EGA</acronym>/<acronym>VGA</acronym> karty. Od tohto momentu sa na v¹etkých
|
|
konzolách bude znak s <acronym>ASCII</acronym> 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 <acronym>EGA</acronym>/<acronym>VGA</acronym> karty.</para>
|
|
|
|
<para>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 <application>kbd</application>/<application>console-tools</application> máte
|
|
informácie o v¹etkých formátoch), v ktorom by mal ten ¹esdesiaty piaty obrázok tvar písmena
|
|
<computeroutput>z</computeroutput>, po jeho natiahnutí sa vám bude pri zadaní
|
|
<keycombo><keycap>Alt</keycap><keycap>6</keycap><keycap>5</keycap></keycombo>, èo je
|
|
<acronym>ASCII</acronym> kód písmena <computeroutput>A</computeroutput>, zobrazova» znak
|
|
<computeroutput>z</computeroutput>. Ale ak tento znak ulo¾íte do súboru, v tomto sa bude
|
|
nachádza» 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¾íva ¹tandard <emphasis>ISO-8859-2</emphasis> (a iné) - spoloèné znaky s
|
|
<acronym>ASCII</acronym> vykreslí rovnako a znaky ¹pecifické pre tú ktorú abecedu
|
|
<quote>namapuje</quote> na menej pou¾ívané znaky <acronym>ASCII</acronym> 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é.</para>
|
|
|
|
<para>Slovenské (ISO-8859-2) fonty, ktoré sú súèas»ou balí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¾ite prí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úèam pou¾íva» <computeroutput>lat2a-16</computeroutput>, resp.
|
|
<computeroutput>lat2u-16</computeroutput>. 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. <command>mc</command>).</para>
|
|
|
|
<para>Èo sa týka fontov <computeroutput>iso02.*</computeroutput> z balíka
|
|
<application>kbd</application>, treba pri nich pou¾i» argument príkazu
|
|
<command>setfont</command> <computeroutput>-m latin2u.trans</computeroutput>. Tak¾e celý
|
|
príkaz na zavedenie niektoré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ádza
|
|
tzv. <foreignphrase>Aplication-Charset Map</foreignphrase> (<acronym>ACM</acronym>), akási
|
|
prevodná tabuµka, ktorá obsahuje riadok pre ka¾dý znak fontu a jeho podobu v kódovaní
|
|
<acronym>UTF-8</acronym>.</para>
|
|
</section> <!-- console-fonts-latin2 -->
|
|
|
|
<section id="console-fonts-autoload">
|
|
<title>Automatické zavádzanie fontov</title>
|
|
|
|
<para> 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 <filename>rc.sysinit</filename> robí asi
|
|
toto: skontroluje, èi existuje súbor <filename>/etc/sysconfig/i18n</filename> a program
|
|
(skript) <filename>/sbin/setsysfont</filename>. Ak áno, spustí
|
|
<command>setsysfont</command>. Ten naèíta <filename>/etc/sysinfo/i18n</filename> a podµa
|
|
premenných definovaných v tomto súbore príkazom <command>consolechars</command> alebo
|
|
<command>setfont</command> zavedie font.</para>
|
|
|
|
<para>Tak¾e staèí nastavi» správne premenné v súbore <filename>/etc/sysconfig/i18n</filename>
|
|
a skript <filename>/sbin/setsysfont</filename> urobí v¹etko za nás. Tento skript mo¾no
|
|
spusti» kedykoµvek chcete zavies» font nastavený ako ¹tandardný pre systém.</para>
|
|
|
|
<para>Premenné v súbore <filename>/etc/sysinit/i18n</filename> sú (pou¾ívajte len mená súborov
|
|
bez cesty a bez prí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ík <command>setsysfont</command> obsahujú oba balíky a kedykoµvek mô¾ete zavies»
|
|
font nastavený ako systémový v súbore <filename>/etc/sysinit/i18n</filename> jednoduchým
|
|
zadaním
|
|
<screen>
|
|
sh$ /sbin/setsysfont
|
|
</screen></para>
|
|
|
|
<para>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
|
|
<application>ssh</application>.</para>
|
|
|
|
<para>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:
|
|
<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á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ý.</para>
|
|
|
|
<para>Ináè, aby bolo jasné, toto vám bude fungova» len na lokálnom stroji - zamyslite sa,
|
|
preèo asi <command>setfont</command> (aj <command>loadkeys</command>) nefunguje cez
|
|
vzdialený terminál a èi by ste z toho nieèo mali, keby to tak nebolo.</para>
|
|
|
|
<para>Ak to s takýmto rie¹ením myslíte vá¾ne, tak skôr uva¾ujte nad modifikáciou skriptu
|
|
<filename>/etc/profile.d/lang.sh</filename>, kde by sa kontroloval aj obsah u¾ívateµského
|
|
súboru <filename>~/.i18n</filename> a podµa toho by sa zaviedol skript, popis rozlo¾enia
|
|
kláves, prípadne nejaké premenné...</para>
|
|
</section> <!-- console-fonts-autoload -->
|
|
</section> <!-- console-fonts -->
|
|
|
|
<section id="console-kbd">
|
|
<title>Slovenská klávesnica na textovej konzole</title>
|
|
|
|
<para>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 <citetitle>Slovak-HOWTO</citetitle> prispie» a pomocou klávesnice písa» slovenský
|
|
text. Na to potrebujete s tou klávesnicou nieèo urobi».</para>
|
|
|
|
<section id="console-kbd-kmap">
|
|
<title>Popis rozlo¾enia kláves (keymap)</title>
|
|
|
|
<para>Adresáre <filename class="directory">/usr/lib/kbd/keymaps/i386/qwertz/</filename> a
|
|
<filename class="directory">qwerty/</filename> obsahujú
|
|
po nain¹talovaní balíka
|
|
<application>kbd</application>/<application>console-tools</application> aj popisy
|
|
slovenského rozlo¾enia kláves. Pre nás sú zaujímavé 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ú definície rozlo¾enia kláves pre slovenský jazyk, prièom rozdiely
|
|
medzi nimi sú v umiestnení kláves <keycap>Y</keycap> a <keycap>Z</keycap> 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á <computeroutput>sk-qwertz</computeroutput>, najmen¹ie zmeny
|
|
oproti americkej klávesnici sú zase v <computeroutput>sk-prog-qwerty</computeroutput>.
|
|
</para>
|
|
|
|
<para>Súbory v adresári <filename class="directory">/usr/lib/kbd/keymaps/i386/include/
|
|
</filename> obsahujú popis základných rozlo¾ení kláves (<computeroutput>azerty
|
|
</computeroutput>, <computeroutput>qwerty</computeroutput>, <computeroutput>qwertz
|
|
</computeroutput>), prídavných kláves (<computeroutput>keypad</computeroutput>,
|
|
<computeroutput>windowkeys</computeroutput>), prípadne problémových kláves (<computeroutput>
|
|
delete</computeroutput>, <computeroutput>backspace</computeroutput>, <computeroutput>ctrl
|
|
</computeroutput>). Súbory <filename>linux-*.inc.gz</filename> sú ¹pecifické pre linux
|
|
(teda nie pre jazyk). Sú to napr. kµúèe (<keycap>F1</keycap>-<keycap>F12</keycap>,
|
|
kombinovaní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ï.</para>
|
|
|
|
<para>Keymapy <filename>*.inc.gz</filename> nepopisujú kompletné rozlo¾enie klávesnice, ale
|
|
len niektorých jej èastí. Vyu¾ívajú sa pri pripájaní
|
|
(<foreignphrase>include</foreignphrase>) zo súborov <filename>*.map.gz</filename>, è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 <computeroutput>sk-qwerty</computeroutput> mô¾me dosta» rozlo¾enie
|
|
qwertz, prípadne (to asi vyu¾ijete) jednoducho odstavi» znaky <keycap>euro</keycap> a
|
|
<keycap>cent</keycap>, ktoré (zatiaµ?) nepotrebujeme a zbytoène nám zaberajú znaky
|
|
<keycap>E</keycap> a <keycap>C</keycap>.</para>
|
|
|
|
<para>Na zavedenie súboru s popisom rozlo¾enia kláves slú¾i nasledovný príkaz:
|
|
<cmdsynopsis>
|
|
<command>loadkeys</command>
|
|
<arg choice="plain"><replaceable>nazov</replaceable></arg>
|
|
</cmdsynopsis>
|
|
kde <computeroutput>nazov</computeroutput> mô¾e by» absolútna alebo relatívna cesta ku
|
|
keymap súboru, alebo meno súboru, pokiaµ sa nachádza v adresári <filename class="directory">
|
|
/usr/lib/kbd/keymaps/</filename>, èi u¾ s príponou, alebo bez.</para>
|
|
|
|
<para>©tandardné slovenské popisy rozlo¾enia kláves nájdeme vo vy¹¹ie spomínaných
|
|
<filename>*.map.gz</filename> súboroch. Ak sa chcete vráti» k ¹tandardnému rozlo¾eniu,
|
|
príkaz
|
|
<screen>
|
|
sh$ loadkeys -d
|
|
</screen>
|
|
zavedie pôvodné, ktoré je ulo¾ené v súbore <filename>defkeymap.map.gz</filename> niekde
|
|
medzi ostatnými keymap súbormi. Predtým ale nikdy nezabudnite zmeni» re¾im slovenskej
|
|
klávesnice na <acronym>US</acronym> znaky, tzn. <keycap>1</keycap> dáva
|
|
<computeroutput>1</computeroutput> a nie <computeroutput>+</computeroutput> 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 <keycap>AltGr</keycap> - pravý
|
|
<keycap>Alt</keycap>) a klávesou <keycap>Pause/Break</keycap> v¹etko napravíte. Potom mô¾ete
|
|
znova zavies» defkeymap.</para>
|
|
|
|
<para>Pokiaµ sa vám nepáèi ani jeden zo ¹tandardných keymap súborov pre slovenèinu, èo je
|
|
pravdepodobné 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ô¾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».</para>
|
|
|
|
<para>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.</para>
|
|
</section> <!-- console-kbd-kmap -->
|
|
|
|
<section id="console-kbd-include">
|
|
<title>Include a nesprávna funkcia kláves <keycap>E</keycap> a <keycap>C</keycap></title>
|
|
|
|
<para>Problém s <keycap>E</keycap> a <keycap>C</keycap> je spôsobený zavedením jednotnej meny
|
|
v európskej ú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>, èo sú na¹e obyèajné <keycap>E</keycap> a <keycap>C</keycap>. 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 <keycap>Pause</keycap>,
|
|
alebo mô¾me zadáva» národné klávesy pri súèasnom dr¾aní klávesy <keycap>AltGr</keycap>
|
|
(pravý <keycap>Alt</keycap>). Súbor <filename>euro.inc</filename>, ktorý definuje tieto dva
|
|
problémové symboly, je pripojený zo súboru <filename>qwerty-layout.inc</filename>, ktorý
|
|
zase pripájajú samotné slovenské keymapy (<filename>sk-qwerty</filename>,
|
|
<filename>sk-prog-qwertz</filename>, …).</para>
|
|
|
|
<para>Rie¹enie je veµmi jednoduché - zeditujete <filename>qwerty-layout.inc</filename> (alebo
|
|
<filename>qwertz-layout.inc</filename>) a odkomentujete znakom
|
|
<computeroutput>#</computeroutput> riadok
|
|
<programlisting>
|
|
include "euro"
|
|
</programlisting></para>
|
|
</section> <!-- console-kbd-include -->
|
|
|
|
<section id="console-kbd-keycode">
|
|
<title>Keycode a definovanie kláves</title>
|
|
|
|
<para>Predchádzajúci problém s eurom mo¾no vyrie¹i» aj definovaním znakov <keycap>E</keycap> a
|
|
<keycap>C</keycap> v samotnom súbore <filename>sk-qwerty.kmap.gz</filename> (alebo inom,
|
|
ktorý pou¾ívate) pomocou slova <computeroutput>keycode</computeroutput>:
|
|
<programlisting>
|
|
keycode 18 = e
|
|
keycode 46 = c
|
|
</programlisting></para>
|
|
|
|
<para>V keymap súboroch je pre ka¾dú klávesu (alebo aspoò pre ka¾dú, ktorú chceme
|
|
predefinova») jeden riadok pribli¾ne tohto razenia:
|
|
<programlisting>
|
|
keycode 3 = two at lcaron two nul nul nul nul Meta_two Meta_two...
|
|
</programlisting></para>
|
|
|
|
<para>Èíslo za <computeroutput>keycode</computeroutput> oznaèuje urèitú klávesu a re»azce za
|
|
<computeroutput>=</computeroutput> 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
|
|
<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¾ných znakov na ka¾dú
|
|
klávesu.</para>
|
|
|
|
<para>Väè¹inou sa pozmeòuje len prvých 16 kombinácií modifikátorov. To je význam riadku
|
|
<programlisting>
|
|
keymaps 0-15
|
|
</programlisting>
|
|
na zaèiatku kmap súborov.</para>
|
|
|
|
<para>V nasledujúcom zozname je týchto 16 kombinácií (po riadkoch):
|
|
<simplelist columns="4" type="horiz">
|
|
<member>¾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ávesnice sú dôle¾ité len prvé ¹tyri - prvé dva sú zvyèajne
|
|
nezmenené americké znaky, napr. <computeroutput>two at</computeroutput>, èo je
|
|
<keycap>2</keycap> <keycap>@</keycap>, 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 <keycap>AltGr</keycap> (pravý <keycap>Alt</keycap>), napr. <computeroutput>lcaron
|
|
two</computeroutput>, èo je na¹e <keycap>µ</keycap> <keycap>2</keycap>.</para>
|
|
|
|
<para>Aby ste mohli vklada» slovenské znaky, nemusíte celý èas pridr¾iava»
|
|
<keycap>AltGr</keycap> nosom, ale mô¾ete pou¾i» <keycap>Pause/Break</keycap>, ktorý v
|
|
kontexte s národnými klávesnicami funguje ako <keycap>AltGr Lock</keycap>. Chápte to tak, ¾e
|
|
keï sa prepnete do slovenského re¾imu stlaèením <keycap>Pause/Break</keycap>, prvé a druhé
|
|
dva re»azce v ka¾dom riadku keycode sa vymenia, napr.
|
|
<programlisting>
|
|
two at lcaron two -> lcaron two two at
|
|
</programlisting></para>
|
|
|
|
<para>Vtedy mô¾ete pou¾i» <keycap>AltGr</keycap> na zadávanie znakov americkej klávesnice,
|
|
alebo sa opätovným stlaèením <keycap>Pause/Break</keycap> prepnú» spät do
|
|
<acronym>US</acronym> re¾imu.</para>
|
|
|
|
<para>Riadok pre klávesu s kódom 41 (znaky <keycap>`</keycap> a <keycap>~</keycap>), má v
|
|
súbore <filename>sk-qwerty.map.gz</filename> nasledovný tvar:
|
|
<programlisting>
|
|
keycode 41 = grave asciitilde dead_diaeresis dead_circumflex ...
|
|
</programlisting></para>
|
|
|
|
<para>Mne osobne sa nepáèi, ¾e sú tu umiestnené màtve klávesy <keycap>dead_diaeresis</keycap>
|
|
(dve bodky nad znakom) a <keycap>dead_circumflex</keycap> (mäkèeò), preto¾e ich nepotrebujem
|
|
--- <keycap>ä</keycap> aj <keycap>ô</keycap> 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 <keycap>;</keycap>
|
|
(semicolon) a <keycap>°</keycap> (degree) tak, ako je to na popiske mojej klávesnice. Zmením
|
|
teda riadok takto:
|
|
<programlisting>
|
|
keycode 41 = grave asciitilde semicolon degree ...
|
|
</programlisting></para>
|
|
|
|
<para>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.</para>
|
|
|
|
<para>Názvy znakov, ktoré sa pou¾ívajú pri definovaní jednotlivých kláves si mô¾ete pre znaky
|
|
<acronym>ASCII</acronym> zisti» v súbore <filename>us.map.gz</filename>. Èíselné kódy
|
|
v¹etkých kláves vám vypµuje program
|
|
<cmdsynopsis>
|
|
<command>showkey</command>
|
|
</cmdsynopsis></para>
|
|
|
|
<para>Pravidlá pre názvy znakov ¹pecifických pre slovenèinu v kmap súboroch:
|
|
<orderedlist>
|
|
<listitem>
|
|
<para>Prvé písmeno v názve urèuje <acronym>ASCII</acronym> znak, pre ktorý chceme pou¾i»
|
|
diakritiku.</para>
|
|
</listitem>
|
|
|
|
<listitem>
|
|
<para>K nemu pridáme identifikátor diakritického znamienka:
|
|
<simplelist>
|
|
<member>caron --- mäkèeò</member>
|
|
<member>acute --- då¾eò</member>
|
|
<member>diaeresis --- dve bodky nad</member>
|
|
<member>circumflex --- vokáò</member>
|
|
</simplelist></para>
|
|
|
|
<para>Napríklad:
|
|
<simplelist>
|
|
<member>scaron = <keycap>¹</keycap></member>
|
|
<member>uacute = <keycap>ú</keycap></member>
|
|
<member>Ocircumflex = <keycap>Ô</keycap></member>
|
|
</simplelist></para>
|
|
</listitem>
|
|
</orderedlist></para>
|
|
|
|
<para>Názvy ïal¹ích znakov ¹pecifických pre slovenèinu:
|
|
<simplelist>
|
|
<member>0xa7 --- <keycap>§</keycap> (paragraf)</member>
|
|
<member>degree --- <keycap>°</keycap> stupeò</member>
|
|
</simplelist></para>
|
|
|
|
<para>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ý <acronym>ASCII</acronym> kód.
|
|
Implicitná hodnota je <constant>iso-8859-1</constant>, teda pre slovenské keymapy je nutné
|
|
vlo¾i» riadok:
|
|
<programlisting>
|
|
charset "iso-8859-2"
|
|
</programlisting></para>
|
|
|
|
<para>E¹te jeden príklad: ak chcete pou¾íva» slovenské rozlo¾enie
|
|
<computeroutput>qwertz</computeroutput> a americké rozlo¾enie
|
|
<computeroutput>qwerty</computeroutput>, potrebujete vymeni» 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ý pohµad to mô¾e fungova» dobre, ale problém sa prejaví pri zapnutom <keycap>Caps
|
|
Lock</keycap> - znaky <keycap>Y</keycap> a <keycap>Z</keycap> 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
|
|
<computeroutput>+</computeroutput> pred ka¾dé písmeno v keycode riadku danej klávesy.
|
|
Písmeno <computeroutput>+</computeroutput> urèuje nasledovnému písmenu atribút
|
|
<foreignphrase>letter</foreignphrase>, teda sa bude pri stlaèenom <keycap>Caps Lock</keycap>
|
|
písa» veµké písmeno. V¹etky písmená <keycap>a</keycap>-<keycap>z</keycap>,
|
|
<keycap>A</keycap>-<keycap>Z</keycap> majú tento atribút priradený automaticky, ale to len v
|
|
prípade, ¾e majú keycode riadok tvaru:
|
|
<programlisting>
|
|
keycode 21 = y
|
|
</programlisting></para>
|
|
|
|
<para>V na¹om prípade teda musíme priradi» tento atribút v¹etkým znakom explicitne. Tak¾e,
|
|
koneèná ú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¹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 <keycap>Caps Lock</keycap> jednoduchým stláèaním ich kláves, ako je to v slovenskom
|
|
popise rozlo¾enia kláves pre <application>X Window System</application>.</para>
|
|
|
|
</section> <!-- console-kbd-keycode -->
|
|
|
|
<section id="console-kbd-dead">
|
|
<title>Màtve klávesy a sekvencie compose</title>
|
|
|
|
<para>S màtvymi klávesami súvisia v kmap súboroch riadky tvaru
|
|
<programlisting>
|
|
compose 'c1' 'c2' to 'c3'
|
|
</programlisting></para>
|
|
|
|
<para>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 <quote>visie»</quote>, 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 <computeroutput>compose</computeroutput> v keymap
|
|
súboroch.</para>
|
|
|
|
<para>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.
|
|
<table id="console-kbd-dead.tables.dead">
|
|
<title id="console-kbd-dead.tables.dead.title">Màtve klá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å¾eò</entry>
|
|
<entry>\'</entry>
|
|
</row>
|
|
|
|
<row>
|
|
<entry>dead_circumflex</entry>
|
|
<entry>mäkèeò</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í</title>
|
|
|
|
<step>
|
|
<para>Ka¾dá compose sekvencia sa zaèína kµúèovým slovom
|
|
<computeroutput>compose</computeroutput>.</para>
|
|
</step>
|
|
|
|
<step>
|
|
<para>Nasleduje compose znak màtvej klávesy (podµa tabuµky <xref
|
|
linkend="console-kbd-dead.tables.dead" endterm="console-kbd-dead.tables.dead.title">),
|
|
napríklad <computeroutput>\'</computeroutput>.
|
|
</para>
|
|
|
|
<para>Druhý je znak, s ktorým chceme màtvu klávesu kombinova», napríklad
|
|
<computeroutput>A</computeroutput>.</para>
|
|
|
|
<para>Za kµúèovým slovom <computeroutput>to</computeroutput> nasleduje výsledok spojenia
|
|
màtvej klávesy a znaku bez diakritiky, teda <computeroutput>Á</computeroutput>.</para>
|
|
</step>
|
|
</procedure>
|
|
|
|
<para>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
|
|
<command>loadkeys</command> èíta» zo ¹tandardného vstupu. Napríklad:
|
|
<screen>
|
|
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$
|
|
</screen></para>
|
|
|
|
<para>Popis aktuálneho rozlo¾enia kláves mô¾ete ulo¾i» do súboru príkazom
|
|
<screen>
|
|
sh$ dumpkeys > subor
|
|
</screen></para>
|
|
|
|
<para>Ak nemáte zavedený slovenský popis rozlo¾enia kláves, musíte zadáva» tieto znaky ako
|
|
<keycap>Alt</keycap> sekvencie, poprípade vklada» ich hex kódy v tvare
|
|
<keycode>0xed</keycode> pre <keycap>í</keycap>. Výpis znakov aktuálneho fontu spolu s ich
|
|
hex kódmi vám urobí 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¹a compose sekvencia a nejaké navy¹e:
|
|
<programlisting>
|
|
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
|
|
</programlisting></para>
|
|
|
|
<para>Mimochodom, v súbore <filename>/usr/lib/kbd/keymaps/compose/compose.latin2</filename>
|
|
máte zoznam compose sekvencií pre normu <acronym>ISO-8859-2</acronym>.</para>
|
|
</section> <!-- console-kbd-dead -->
|
|
|
|
<section id="console-kbd-autoload">
|
|
<title>Automatické zavádzanie keymap súboru</title>
|
|
|
|
<para>Na nastavenie rozlo¾enia klávesnice, ktoré chceme zavies» pri ¹tarte systému, nám slú¾i
|
|
súbor <filename>/etc/sysconfig/keyboard</filename>. Pre Slováka ako repa by mal vyzera»
|
|
minimálne takto:
|
|
<programlisting>
|
|
KEYTABLE=sk-qwerty # zavedie rozlo¾enie kláves sk-qwerty
|
|
KBCHARSET=iso-8859-2 # ...a spomínaný súbor compose.latin2
|
|
</programlisting></para>
|
|
|
|
<para>Nastavenie klávesnice pri ¹tarte má na starosti skript <command>keytable</command>,
|
|
ktorý je volaný priamo z <filename>rc.sysinit</filename>, tak¾e netreba vytvára» linky v
|
|
adresároch pre runlevel <constant>3/multiuser</constant>, prípadne <constant>5/X</constant>.
|
|
</para>
|
|
|
|
<para>V dokumentácii k <application>initscripts</application> sa pí¹e: <quote>Ak ulo¾íte popis
|
|
rozlo¾enia kláves (pou¾itím <command>dumpkeys</command>) do súboru
|
|
<filename>/etc/sysconfig/console/default.kmap</filename>, 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» <quote>dumpnutý</quote> popis rozlo¾enia kláves
|
|
a nie skopírovaný súbor z <filename class="directory">/usr/lib/kbd/keytables/</filename>,
|
|
preto¾e tie èasto e¹te vkladajú (include) iné popisy z tejto adresárovej
|
|
¹truktúry.</quote></para>
|
|
|
|
<para>Po pripojení súborových systémov, v prípade, ¾e existuje spustiteµný súbor
|
|
<filename>/etc/rc.d/init.d/keytable</filename> a adresár
|
|
<filename class="directory">/usr/lib/kbd/keymaps/</filename>, vykoná sa príkaz
|
|
<screen>
|
|
sh# /etc/rc.d/init.d/keytable start
|
|
</screen></para>
|
|
|
|
<para>Tento u¾ zavedie popis rozlo¾enia kláves tak, ako to máte urèené premennými v súbore
|
|
<filename>/etc/sysconfig/keyboard</filename>, preto nemusíte vytvára» odkazy v jednotlivých
|
|
<filename class="directory">rc[1-5].d/</filename> adresároch.</para>
|
|
|
|
<para>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:
|
|
<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í konzoly</title>
|
|
|
|
<para>Pokiaµ som sa niekde nesekol, tak minimálne v distribúciách
|
|
<systemitem class="osname">RedHat</systemitem> a
|
|
<systemitem class="osname">Mandrake</systemitem> by po týchto zmenách mala do pohody za¹lapa»
|
|
slovenská podpora (fonty + klá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¾, ak zadávate rootovské heslo s pou¾itím iného rozlo¾enia kláves ako je ¹tandardné
|
|
(<computeroutput>us</computeroutput>), vlo¾te si jeho popis do súboru
|
|
<filename>/etc/sysconfig/console/default.kmap</filename>. Pozor, nesmiete len tak skopírova»
|
|
súbor, alebo vytvori» link! Ak chcete pou¾i» napríklad rozlo¾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» slovenský font a klávesnicu len jednorazovo, tieto príkazy by to mali
|
|
dokáza»:
|
|
<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ä» na ¹tandardné 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 -->
|
|
|