Protože občas zkouším různé distribuce, nebo naopak občas potřebuji nějaký Linux nainstalovat abych mohl dělat to, co ve Windows nemůžu, občas potřebuji znovu tohle rozložení nahrát do systému. Proto jsem si sepsal tenhle postup krok za krokem, abych to příště zas nemusel složitě vymýšlet a googlit.
Postup sedí na Debian-based distribuce, v ostatních se to může lišit, ale ty nepoužívám...
- Stáhnout soubor s upraveným rozložením
- Přepsat původní soubor
cz
v/usr/share/X11/xkb/symbols/
# cd /usr/share/X11/xkb/symbols/ # wget http://pub.gcm.cz/cz # mv cz cz.old # mv cz.1 cz
- Nyní je třeba systému říct, že máme nějaké další rozložení, aby bylo vidět v klikátku pro výběr rozložení. Tyto informace se nachází v souborech
/usr/share/X11/xkb/rules/xorg.xml
a/usr/share/X11/xkb/rules/xorg.lst
. - V souboru
xorg.xml
najdeme oblast týkající se českého rozložení (vyhledat v souboru Czechia) a do<variantlist>
přidat nový tag:
<variant> <configitem> <name>win</name> <description>qwerty (Windows version)</description> </configitem> </variant>
- V souboru
xorg.lst
najít opět oblast týkající se českých variant klávesnice (např. řádek začínajícíbksl
) a někam tam přidat řádek
win cz: qwerty (Windows version)
- Krok 4 resp. 5 ještě můžeme zopakovat pro soubor
evdev.xml
resp.evdev.lst
. Netuším, proč to samé musí být ve dvou souborech, ale pravděpodobně to bude mít nějaký historický význam. - Nyní by mělo stačit restartovat X.org, a nový layout klávesnice by měl být přístupný v nastavení systému.
diff -Naur xkb/rules/evdev.lst /usr/share/X11/xkb/rules/evdev.lst --- xkb/rules/evdev.lst 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/evdev.lst 2010-12-11 21:36:40.719018001 +0100 @@ -367,6 +367,7 @@ qwerty_bksl cz: qwerty, extended Backslash ucw cz: UCW layout (accented letters only) dvorak-ucw cz: US Dvorak with CZ UCW support + win cz: qwerty (Windows version) nodeadkeys dk: Eliminate dead keys mac dk: Macintosh mac_nodeadkeys dk: Macintosh, eliminate dead keys diff -Naur xkb/rules/evdev.xml /usr/share/X11/xkb/rules/evdev.xml --- xkb/rules/evdev.xml 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/evdev.xml 2010-12-11 21:36:08.329018001 +0100 @@ -2101,6 +2101,12 @@ <description>US Dvorak with CZ UCW support</description> </configItem> </variant> + <variant> + <configItem> + <name>win</name> + <description>qwerty (Windows version)</description> + </configItem> + </variant> </variantList> </layout> <layout> diff -Naur xkb/rules/xfree86.lst /usr/share/X11/xkb/rules/xfree86.lst --- xkb/rules/xfree86.lst 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/xfree86.lst 2010-12-11 21:17:24.769018003 +0100 @@ -367,6 +367,7 @@ qwerty_bksl cz: qwerty, extended Backslash ucw cz: UCW layout (accented letters only) dvorak-ucw cz: US Dvorak with CZ UCW support + win cz: qwerty (Windows version) nodeadkeys dk: Eliminate dead keys mac dk: Macintosh mac_nodeadkeys dk: Macintosh, eliminate dead keys diff -Naur xkb/rules/xfree86.xml /usr/share/X11/xkb/rules/xfree86.xml --- xkb/rules/xfree86.xml 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/xfree86.xml 2010-12-11 21:36:21.859018000 +0100 @@ -2101,6 +2101,12 @@ <description>US Dvorak with CZ UCW support</description> </configItem> </variant> + <variant> + <configItem> + <name>win</name> + <description>qwerty (Windows version)</description> + </configItem> + </variant> </variantList> </layout> <layout> diff -Naur xkb/rules/xorg.lst /usr/share/X11/xkb/rules/xorg.lst --- xkb/rules/xorg.lst 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/xorg.lst 2010-12-11 21:17:24.769018003 +0100 @@ -367,6 +367,7 @@ qwerty_bksl cz: qwerty, extended Backslash ucw cz: UCW layout (accented letters only) dvorak-ucw cz: US Dvorak with CZ UCW support + win cz: qwerty (Windows version) nodeadkeys dk: Eliminate dead keys mac dk: Macintosh mac_nodeadkeys dk: Macintosh, eliminate dead keys diff -Naur xkb/rules/xorg.xml /usr/share/X11/xkb/rules/xorg.xml --- xkb/rules/xorg.xml 2010-04-15 14:12:21.000000000 +0200 +++ /usr/share/X11/xkb/rules/xorg.xml 2010-12-11 21:36:21.859018000 +0100 @@ -2101,6 +2101,12 @@ <description>US Dvorak with CZ UCW support</description> </configItem> </variant> + <variant> + <configItem> + <name>win</name> + <description>qwerty (Windows version)</description> + </configItem> + </variant> </variantList> </layout> <layout> diff -Naur xkb/symbols/cz /usr/share/X11/xkb/symbols/cz --- xkb/symbols/cz 2010-04-15 14:12:22.000000000 +0200 +++ /usr/share/X11/xkb/symbols/cz 2010-12-11 22:10:22.709018003 +0100 @@ -172,3 +172,42 @@ include "level3(ralt_switch)" }; + +xkb_symbols "win" { + // This layout works exactly as Windows CZ QWERTY keyboard. + + include "cz(basic)" + name[Group1]= "Czechia - windows qwerty"; + + key <AB01> { [ z, Z, NoSymbol, NoSymbol ] }; + key <AD06> { [ y, Y, NoSymbol, NoSymbol ] }; + + key <AE01> { [ plus, 1, exclam, NoSymbol ] }; + key <AE02> { [ ecaron, 2, at, NoSymbol ] }; + key <AE03> { [ scaron, 3, numbersign, NoSymbol ] }; + key <AE04> { [ ccaron, 4, dollar, NoSymbol ] }; + key <AE05> { [ rcaron, 5, percent, NoSymbol ] }; + key <AE06> { [ zcaron, 6, asciicircum, NoSymbol ] }; + key <AE07> { [ yacute, 7, ampersand, NoSymbol ] }; + key <AE08> { [ aacute, 8, asterisk, NoSymbol ] }; + key <AE09> { [ iacute, 9, parenleft, NoSymbol ] }; + key <AE10> { [ eacute, 0, parenright, NoSymbol ] }; + key <AE11> { [ equal, percent, NoSymbol, dead_diaeresis ] }; + key <AE12> { [ dead_acute, dead_caron, equal, plus ] }; + key <LSGT> { [ dead_diaeresis, apostrophe, backslash, bar ] }; + + key <AD11> { [ uacute, slash, bracketleft, braceleft ] }; + key <AD12> { [ parenright, parenleft, bracketright, braceright ] }; + + key <AC10> { [ uring, quotedbl, semicolon, colon ] }; + key <AC11> { [ section, exclam, apostrophe, ssharp ] }; + key <AC12> { [ EuroSign, dead_diaeresis, NoSymbol, NoSymbol ] }; + key <BKSL> { [ dead_diaeresis, apostrophe, backslash, bar ] }; + + key <AB08> { [ comma, question, less, NoSymbol ] }; + key <AB09> { [ period, colon, greater, NoSymbol ] }; + key <AB10> { [ minus, underscore, asterisk, NoSymbol ] }; + + key <SPCE> { [ space, space, space, space ] }; +}; +