Vyreseno: xmodmap a ISO_Prev_Group a ISO_Next_Group
xmail listy
ric.linux na os3.os.ds.mfcr.cz
Čtvrtek Srpen 31 07:19:30 CEST 2000
Dobrý den.
> Hi!
>
> Zkousel jsem metodou pokus-omyl laborovat s XKB, specielne s
> definicemi dalsich grup. Nasledujici definice obsahuji 4 grupy, mezi
> kterymi se rotuje pomoci ScrollLocku a aktivni grupa se indikuje
> ledkama pro Caps a Scroll lock binarne. Jako mode switch o jednu, dve
> nebo 3 grupy funguji AltGr, pravy Ctrl a (win)Menu.
>
> Pokud chcete, aby ISO_(Next|Prev)_Group rotovaly o dve grupy misto o
> jednu, tak do compat pridejte jeste
>
...
Již jsem psal, že to mám vyřešeno - chtěl jsem uveřejnit až hotovou práci a neuvědomil jsem si, že to již teď potřebují jiní lidé.
Já to vyřešil takhle:
###############
/etc/XF86Config
---------------
Section "Keyboard"
Protocol "Standard"
XkbRules "xfree86"
XkbModel "pc101" # typ klavesnice - informace o VZHLEDU klavesnice
# pc101 - 101 klaves
# pc102 - 102 klaves (extra klavesa)
# pc104 - 104 klaves (windows klavesy)
# pc105 - 105 klaves (extra + windows klavesy)
# -> pc105 neni definovana
XkbLayout "us(pc_universal)" # klavesova mapa
# us - odpovida us(pc101)
# us(pc_universal) - odpovida us(pc105)
# XLeds 1 2 3
EndSection
---------------
###############
###################################
/usr/X11R6/lib/X11/xkb/compat/basic
-----------------------------------
interpret Any+Lock {
action= LockGroup(group=+2);
};
indicator "Caps Lock" {
groups= Group3+Group4;
};
-----------------------------------
###################################
Výše uvedenými texty se nahradí ekvivalentní texty v daných souborech.
CapsLock pak funguje tak, že přepíná mezi Group1 a Group3.
Ledka CapsLock indikuje jste-li v Group1+Group2 nebo v Group3+Group4.
Definici klávesnice tam nasypu pomocí Xmodmap - každý keysym bude mít 8 sloupců:
Group1 Group2 Group3 Group4
(každá Group se skládá ze 2 sloupců - druhý sloupec se aplikuje pokud je zmáčknut Shift)
Mezi lichou a sudou Group se bude přepínat pomocí AltGr (ISO_Latch_Group).
Richard Šputa
Další informace o konferenci Linux