Alles auf xkeyboard-config Version 1.6 angeglichen.

Modifier mit Hilfe von compat-Regeln definiert.
Damit sollten alle Multi-Layout-Bugs behoben sein.
Allerdings tritt wahrscheinlich #135 wieder auf.
This commit is contained in:
stephan 2009-05-28 18:22:07 +00:00
parent d68927e6ac
commit d72e7764a6
10 changed files with 504 additions and 218 deletions

View File

@ -32,11 +32,11 @@ xmodmap/neo_de_alternative.xmodmap:xmodmap/neo_de.xmodmap
xmodmap/neo_de.xmodmap.referenz:xmodmap/neo_de.xmodmap
cd xmodmap; ./erzeuge_neo_de_referenz > neo_de.xmodmap.referenz
X/xkb.tgz:X/rules/* X/symbols/* X/types/*
X/xkb.tgz:X/compat/* X/rules/* X/symbols/* X/types/*
cd X; \
chmod u=rw,g=r,o=r rules/* symbols/* types/*; \
chmod u=rw,g=r,o=r compat/* rules/* symbols/* types/*; \
tar -cz --transform='s,^,xkb/,' \
-f xkb.tgz rules/base rules/base.xml rules/evdev rules/evdev.xml symbols/de symbols/level3 symbols/level5 symbols/shift types/level5
-f xkb.tgz compat/neo_mods rules/base rules/base.xml rules/evdev rules/evdev.xml symbols/de symbols/level3 symbols/level5 symbols/shift types/level5
clean:
rm -f ${FILES}

30
linux/X/compat/neo_mods Normal file
View File

@ -0,0 +1,30 @@
// Neo special modifiers
default partial xkb_compatibility "default" {
include "neo_mods(caps_lock)"
include "neo_mods(shift_fix)"
include "neo_mods(level5_lock)"
};
partial xkb_compatibility "caps_lock" {
// Keysym Caps_Lock locks Lock modifier
// No need for modifier-mapping
interpret Caps_Lock {
action = LockMods(modifiers = Lock);
};
};
partial xkb_compatibility "shift_fix" {
// Seems like symbols/level3(caps_switch) does something evil to the left shift-key.
// This should do the trick:
interpret Shift_L {
action = SetMods(modifiers = Shift);
};
};
partial xkb_compatibility "level5_lock" {
virtual_modifiers NumLock;
// NumLock is misused for level5-lock-indication
interpret ISO_Level5_Lock {
action = LockMods(modifiers = NumLock);
};
};

View File

@ -22,7 +22,7 @@
! $msmodels = microsoft microsoft7000 microsoftpro microsoftprousb microsoftprose
// PC geometries - they have special geometry but symbols are mostly pc105
! $pcgeometries = abnt2 latitude jp106 kr106
! $pcgeometries = latitude
// Layouts that provide further specializations for the OLPC
! $olpclayouts = af am ara br ca es et it kh kz in mn np ru th tr us
@ -85,7 +85,6 @@
gb gr \
hu \
ie ir is it \
kg \
latam \
lk lt \
mn mt \
@ -100,6 +99,9 @@
! $evdevkbds = ibm_spacesaver
! $thinkpads = thinkpad thinkpad60 thinkpadz60
! $dvoraklayouts = br ca de ee es fr gb no pl se us
! model = keycodes
@ -109,8 +111,6 @@
sun5 = sun(type5_euro)
sun6 = sun(type6_usb)
pc98 = xfree98(pc98)
abnt2 = xfree86(abnt2)
jp106 = xfree86(jp106)
evdev = evdev
olpc = evdev
macintosh_hhk = macintosh(hhk)
@ -139,6 +139,7 @@
$msmodels = microsoft(natural)
dell101 = dell(dell101)
dellm65 = dell(dellm65)
latitude = dell(latitude)
flexpro = keytronic(FlexPro)
hp6000 = hp(omnibook)
omnikey101 = northgate(omnikey101)
@ -292,10 +293,10 @@
amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2
amiga * = xfree68_vndr/amiga(usa1)+%l%(v)
classmate us = pc+%l(classmate)
sun4 $nonlatin = latin+sun_vndr/us(sun4)+%l%(v):2
sun4 * = latin+sun_vndr/us(sun4)+%l%(v)
sun5 $nonlatin = latin+sun_vndr/us(sun5)+%l%(v):2
sun5 * = latin+sun_vndr/us(sun5)+%l%(v)
sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2
sun4 * = latin+sun_vndr/us(type4)+%l%(v)
sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2
sun5 * = latin+sun_vndr/us(type5)+%l%(v)
sun6 us = sun_vndr/us(type6)
sun6 en_US = sun_vndr/us(type6)+iso9995-3(basic)
sun6 * = sun_vndr/us(type6)+%l%(v)
@ -309,21 +310,38 @@
$macs $macvendorlayouts = pc+macintosh_vndr/%l%(v)
olpc $olpclayouts = olpc+%l%(m)
olpc * = olpc+%l%(v)
thinkpad br = pc+br(thinkpad)
$thinkpads br = pc+br(thinkpad)
* $nonlatin = pc+us+%l%(v):2
* * = pc+%l%(v)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ml = pc+in(mal)
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
@ -381,7 +399,7 @@
macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l[1]%(v[1])
macintosh_old * = macintosh_vndr/us(oldmac)+%l[1]%(v[1])
$macs $macvendorlayouts = pc+macintosh_vndr/%l[1]%(v[1])
thinkpad br = pc+%l[1](thinkpad)
$thinkpads br = pc+%l[1](thinkpad)
* * = pc+%l[1]%(v[1])
! model layout[1] variant[1] = symbols
@ -437,15 +455,32 @@
! layout[2] = symbols
ar = +ara%(v[2]):2
ben = +in(ben):2
bs = +ba%(v[2]):2
cs = +rs%(v[2]):2
cz_qwerty = +cz(qwerty):2
dev = +in(deva):2
dvorak = +us(dvorak):2
dzdwi = +bt%(v[2]):2
el = +gr%(v[2]):2
en_US = +latin%(v[2]):2
guj = +in(guj):2
gur = +in(guru):2
iu = +ca(ike):2
lo = +la%(v[2]):2
kan = +in(kan):2
mi = +mao%(v[2]):2
ml = +in(mal):2
ogham = +ie(ogam):2
ori = +ie(ori):2
sapmi = +no(smi):2
sr = +srp%(v[2]):2
syr = +sy(syc):2
tel = +in(tel):2
tml = +in(tam):2
yu = +srp%(v[2]):2
fr-latin9 = +fr(latin9):2
us_intl = +us(alt-intl):2
ben(basic) = +in(ben):2
ben(probhat) = +in(ben_probhat):2
dev(basic) = +in(deva):2
@ -499,15 +534,32 @@
! layout[3] = symbols
ar = +ara%(v[3]):3
ben = +in(ben):3
bs = +ba%(v[3]):3
cs = +rs%(v[3]):3
cz_qwerty = +cz(qwerty):3
dev = +in(deva):3
dvorak = +us(dvorak):3
dzdwi = +bt%(v[3]):3
el = +gr%(v[3]):3
en_US = +latin%(v[3]):3
guj = +in(guj):3
gur = +in(guru):3
iu = +ca(ike):3
lo = +la%(v[3]):3
kan = +in(kan):3
mi = +mao%(v[3]):3
ml = +in(mal):3
ogham = +ie(ogam):3
ori = +ie(ori):3
sapmi = +no(smi):3
sr = +srp%(v[3]):3
syr = +sy(syc):3
tel = +in(tel):3
tml = +in(tam):3
yu = +srp%(v[3]):3
fr-latin9 = +fr(latin9):3
us_intl = +us(alt-intl):3
ben(basic) = +in(ben):3
ben(probhat) = +in(ben_probhat):3
dev(basic) = +in(deva):3
@ -561,15 +613,32 @@
! layout[4] = symbols
ar = +ara%(v[4]):4
ben = +in(ben):4
bs = +ba%(v[4]):4
cs = +rs%(v[4]):4
cz_qwerty = +cz(qwerty):4
dev = +in(deva):4
dvorak = +us(dvorak):4
dzdwi = +bt%(v[4]):4
el = +gr%(v[4]):4
en_US = +latin%(v[4]):4
guj = +in(guj):4
gur = +in(guru):4
iu = +ca(ike):4
lo = +la%(v[4]):4
kan = +in(kan):4
mi = +mao%(v[4]):4
ml = +in(mal):4
ogham = +ie(ogam):4
ori = +ie(ori):4
sapmi = +no(smi):4
sr = +srp%(v[4]):4
syr = +sy(syc):4
tel = +in(tel):4
tml = +in(tam):4
yu = +srp%(v[4]):4
fr-latin9 = +fr(latin9):4
us_intl = +us(alt-intl):4
ben(basic) = +in(ben):4
ben(probhat) = +in(ben_probhat):4
dev(basic) = +in(deva):4
@ -788,11 +857,13 @@
btc6301urf = +inet(media_nav_acpi_common)
dellsk8125 = +inet(dell)
dellsk8135 = +inet(dell)
cherrybunlim = +inet(nav_common)
dexxa = +inet(media_nav_common)
dtk2000 = +inet(media_nav_acpi_common)
fscaa1667g = +inet(media_nav_common)
geniuskb19e = +inet(media_nav_acpi_common)
geniuscomfy = +inet(media_nav_acpi_common)
geniuskkb2050hs = +inet(dellusbmm)
hpnx9020 = +inet(hpi6)
latitude = +inet(media_common)
logicd = +inet(logitech_base)
@ -817,11 +888,24 @@
targa_v811 = +inet(media_nav_acpi_common)
thinkpad = +inet(media_nav_common)
thinkpadz60 = +inet(thinkpad60)
trust_slimline = +inet(media_nav_acpi_common)
vsonku306 = +inet(microsoftprooem)
$inetkbds = +inet(%m)
$maclaptop = +inet(apple)+level3(enter_switch)
$macs = +inet(apple)
// Neo special modifier-keys
! layout variant = compat
de neo = +neo_mods
! layout[1] variant[1] = compat
de neo = +neo_mods
! layout[2] variant[2] = compat
de neo = +neo_mods:2
! layout[3] variant[3] = compat
de neo = +neo_mods:3
! layout[4] variant[4] = compat
de neo = +neo_mods:4
! model layout = compat
pc98 nec_vndr/jp = pc98(basic)
* jp = complete+japan
@ -863,7 +947,6 @@
altwin:ctrl_alt_win = +altwin(ctrl_alt_win)
altwin:meta_win = +altwin(meta_win)
altwin:left_meta_win = +altwin(left_meta_win)
altwin:super_win = +altwin(super_win)
altwin:hyper_win = +altwin(hyper_win)
altwin:alt_super_win = +altwin(alt_super_win)
altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin)
@ -896,6 +979,7 @@
grp:lctrl_toggle = +group(lctrl_toggle)
grp:rctrl_toggle = +group(rctrl_toggle)
grp:lalt_toggle = +group(lalt_toggle)
grp:sclk_toggle = +group(sclk_toggle)
lv3:switch = +level3(switch)
lv3:ralt_switch = +level3(ralt_switch)
lv3:ralt_switch_multikey = +level3(ralt_switch_multikey)
@ -906,6 +990,7 @@
lv3:win_switch = +level3(win_switch)
lv3:lwin_switch = +level3(lwin_switch)
lv3:rwin_switch = +level3(rwin_switch)
lv3:enter_switch = +level3(enter_switch)
caps:capslock = +capslock(capslock)
caps:shiftlock = +capslock(shiftlock)
caps:swapescape = +capslock(swapescape)
@ -956,7 +1041,7 @@
shift:breaks_caps = +shift(breaks_caps)
esperanto:qwerty = +epo(qwerty)
esperanto:dvorak = +epo(dvorak)
terminate:ctrl_alt_bksp = +srvr_ctrl(terminate_ctrl_alt_bksp)
terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp)
shift:both_capslock = +shift(both_capslock)
shift:lshift_both_capslock = +shift(lshift_both_capslock)
shift:rshift_both_capslock = +shift(rshift_both_capslock)
@ -982,6 +1067,7 @@
lv5:rwin_switch_numlock_cancel = +level5(rwin_switch_numlock_cancel)
! option = compat
grp_led:num = +lednum(group_lock)
grp_led:caps = +ledcaps(group_lock)

View File

@ -86,13 +86,6 @@
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>jp106</name>
<description>Japanese 106-key</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc98</name>
@ -121,13 +114,6 @@
<vendor>A4Tech</vendor>
</configItem>
</model>
<model>
<configItem>
<name>abnt2</name>
<description>Brazilian ABNT2</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>airkey</name>
@ -259,6 +245,13 @@
<vendor>Cherry</vendor>
</configItem>
</model>
<model>
<configItem>
<name>cherrybunlim</name>
<description>Cherry B.UNLIMITED</description>
<vendor>Cherry</vendor>
</configItem>
</model>
<model>
<configItem>
<name>chicony</name>
@ -447,6 +440,13 @@
<vendor>Genius</vendor>
</configItem>
</model>
<model>
<configItem>
<name>geniuskkb2050hs</name>
<description>Genius KKB-2050HS</description>
<vendor>Genius</vendor>
</configItem>
</model>
<model>
<configItem>
<name>gyration</name>
@ -667,7 +667,7 @@
<model>
<configItem>
<name>logicdpa2</name>
<description>Logitech Cordless Desktop Pro (alternate option2)</description>
<description>Logitech Cordless Desktop Pro (alternate option 2)</description>
<vendor>Logitech</vendor>
</configItem>
</model>
@ -972,6 +972,13 @@
<vendor>Trust</vendor>
</configItem>
</model>
<model>
<configItem>
<name>trust_slimline</name>
<description>Trust Slimline</description>
<vendor>Trust</vendor>
</configItem>
</model>
<model>
<configItem>
<name>yahoo</name>
@ -1070,13 +1077,6 @@
<vendor>eMachines</vendor>
</configItem>
</model>
<model>
<configItem>
<name>kr106</name>
<description>Korean 106-key</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>evdev</name>
@ -2348,6 +2348,13 @@
<description>Breton</description>
</configItem>
</variant>
<variant>
<configItem>
<name>oci</name>
<description>Occitan</description>
<languageList><iso639Id>oci</iso639Id></languageList>
</configItem>
</variant>
<variant>
<configItem>
<name>geo</name>
@ -2822,7 +2829,7 @@
<layout>
<configItem>
<name>kg</name>
<shortDescription>Kir</shortDescription>
<shortDescription>Kgz</shortDescription>
<description>Kyrgyzstan</description>
<languageList><iso639Id>kir</iso639Id></languageList>
</configItem>
@ -2968,6 +2975,12 @@
<description>LEKPa</description>
</configItem>
</variant>
<variant>
<configItem>
<name>balticplus</name>
<description>Baltic+</description>
</configItem>
</variant>
</variantList>
</layout>
<layout>
@ -3177,7 +3190,7 @@
<variant>
<configItem>
<name>dvorak_altquotes</name>
<description>Dvorak, Polish quotes on key "1/!"</description>
<description>Dvorak, Polish quotes on key 1</description>
</configItem>
</variant>
<variant>
@ -3331,6 +3344,12 @@
<description>Phonetic</description>
</configItem>
</variant>
<variant>
<configItem>
<name>phonetic_winkeys</name>
<description>Phonetic Winkeys</description>
</configItem>
</variant>
<variant>
<configItem>
<name>typewriter</name>
@ -3406,6 +3425,12 @@
<languageList><iso639Id>xal</iso639Id></languageList>
</configItem>
</variant>
<variant>
<configItem>
<name>dos</name>
<description>DOS</description>
</configItem>
</variant>
</variantList>
</layout>
<layout>
@ -3885,8 +3910,8 @@
</variant>
<variant>
<configItem>
<name>unicode</name>
<description>Unicode</description>
<name>legacy</name>
<description>Legacy</description>
</configItem>
</variant>
<variant>
@ -3940,6 +3965,12 @@
<languageList><iso639Id>eng</iso639Id></languageList>
</configItem>
<variantList>
<variant>
<configItem>
<name>extd</name>
<description>Extended - Winkeys</description>
</configItem>
</variant>
<variant>
<configItem>
<name>intl</name>
@ -4195,7 +4226,16 @@
</layout>
<layout>
<configItem>
<name>braille</name>
<name>sn</name>
<shortDescription>Sen</shortDescription>
<description>Senegal</description>
<languageList><iso639Id>wol</iso639Id></languageList>
</configItem>
<variantList/>
</layout>
<layout>
<configItem>
<name>brai</name>
<shortDescription>Brl</shortDescription>
<description>Braille</description>
</configItem>
@ -4214,6 +4254,22 @@
</variant>
</variantList>
</layout>
<layout>
<configItem>
<name>tm</name>
<shortDescription>Tkm</shortDescription>
<description>Turkmenistan</description>
<languageList><iso639Id>tuk</iso639Id></languageList>
</configItem>
<variantList>
<variant>
<configItem>
<name>alt</name>
<description>Alt-Q</description>
</configItem>
</variant>
</variantList>
</layout>
</layoutList>
<optionList>
<group allowMultipleSelection="true">
@ -4472,7 +4528,7 @@
<option>
<configItem>
<name>lv3:enter_switch</name>
<description>Press Enter key on keypad to choose 3rd level.</description>
<description>Enter on keypad</description>
</configItem>
</option>
<option>
@ -4773,12 +4829,6 @@
<description>Meta is mapped to Left Win</description>
</configItem>
</option>
<option>
<configItem>
<name>altwin:super_win</name>
<description>Super is mapped to Win keys</description>
</configItem>
</option>
<option>
<configItem>
<name>altwin:hyper_win</name>
@ -5108,5 +5158,17 @@
</configItem>
</option>
</group>
<group allowMultipleSelection="true">
<configItem>
<name>terminate</name>
<description>Key sequence to kill the X server</description>
</configItem>
<option>
<configItem>
<name>terminate:ctrl_alt_bksp</name>
<description>Control + Alt + Backspace</description>
</configItem>
</option>
</group>
</optionList>
</xkbConfigRegistry>

View File

@ -22,7 +22,7 @@
! $msmodels = microsoft microsoft7000 microsoftpro microsoftprousb microsoftprose
// PC geometries - they have special geometry but symbols are mostly pc105
! $pcgeometries = abnt2 latitude jp106 kr106
! $pcgeometries = latitude
// Layouts that provide further specializations for the OLPC
! $olpclayouts = af am ara br ca es et it kh kz in mn np ru th tr us
@ -64,6 +64,7 @@
microsoftoffice microsoftmult \
mx1998 mx2500 mx2750 \
oretec \
pc105 \
presario propeller \
qtronix \
rapidaccess rapidaccess2 thinkpad60 \
@ -96,13 +97,15 @@
vn \
za
! $evdevkbds = ibm_spacesaver
! $thinkpads = thinkpad thinkpad60 thinkpadz60
! $dvoraklayouts = br ca de ee es fr gb no pl se us
! model = keycodes
pc98 = evdev(pc98)
abnt2 = evdev(abnt2)
jp106 = evdev(jp106)
* = evdev
! layout[1] = keycodes
@ -125,6 +128,7 @@
$msmodels = microsoft(natural)
dell101 = dell(dell101)
dellm65 = dell(dellm65)
latitude = dell(latitude)
flexpro = keytronic(FlexPro)
hp6000 = hp(omnibook)
omnikey101 = northgate(omnikey101)
@ -278,10 +282,10 @@
amiga $nonlatin = xfree68_vndr/amiga(usa1)+%l%(v):2
amiga * = xfree68_vndr/amiga(usa1)+%l%(v)
classmate us = pc+%l(classmate)
sun4 $nonlatin = latin+sun_vndr/us(sun4)+%l%(v):2
sun4 * = latin+sun_vndr/us(sun4)+%l%(v)
sun5 $nonlatin = latin+sun_vndr/us(sun5)+%l%(v):2
sun5 * = latin+sun_vndr/us(sun5)+%l%(v)
sun4 $nonlatin = latin+sun_vndr/us(type4)+%l%(v):2
sun4 * = latin+sun_vndr/us(type4)+%l%(v)
sun5 $nonlatin = latin+sun_vndr/us(type5)+%l%(v):2
sun5 * = latin+sun_vndr/us(type5)+%l%(v)
sun6 us = sun_vndr/us(type6)
sun6 en_US = sun_vndr/us(type6)+iso9995-3(basic)
sun6 * = sun_vndr/us(type6)+%l%(v)
@ -295,21 +299,38 @@
$macs $macvendorlayouts = pc+macintosh_vndr/%l%(v)
olpc $olpclayouts = olpc+%l%(m)
olpc * = olpc+%l%(v)
thinkpad br = pc+br(thinkpad)
$thinkpads br = pc+br(thinkpad)
* $nonlatin = pc+us+%l%(v):2
* * = pc+%l%(v)
! model layout[1] = symbols
* ar = pc+ara%(v[1])
* ben = pc+in(ben)
* bs = pc+ba%(v[1])
* cs = pc+rs%(v[1])
* cz_qwerty = pc+cz(qwerty)
* dev = pc+in(deva)
* dvorak = pc+us(dvorak)
* dzdwi = pc+bt%(v[1])
* el = pc+gr%(v[1])
* en_US = pc+latin%(v[1])
* guj = pc+in(guj)
* gur = pc+in(guru)
* iu = pc+ca(ike)
* lo = pc+la%(v[1])
* kan = pc+in(kan)
* mi = pc+mao%(v[1])
* ml = pc+in(mal)
* ogham = pc+ie(ogam)
* ori = pc+ie(ori)
* sapmi = pc+no(smi)
* sr = pc+srp%(v[1])
* syr = pc+sy(syc)
* tel = pc+in(tel)
* tml = pc+in(tam)
* yu = pc+srp%(v[1])
* fr-latin9 = pc+fr(latin9)
* us_intl = pc+us(alt-intl)
* ben(basic) = pc+in(ben)
* ben(probhat) = pc+in(ben_probhat)
* dev(basic) = pc+in(deva)
@ -367,7 +388,7 @@
macintosh_old $macvendorlayouts = macintosh_vndr/us(oldmac)+macintosh_vndr/%l[1]%(v[1])
macintosh_old * = macintosh_vndr/us(oldmac)+%l[1]%(v[1])
$macs $macvendorlayouts = pc+macintosh_vndr/%l[1]%(v[1])
thinkpad br = pc+%l[1](thinkpad)
$thinkpads br = pc+%l[1](thinkpad)
* * = pc+%l[1]%(v[1])
! model layout[1] variant[1] = symbols
@ -423,15 +444,32 @@
! layout[2] = symbols
ar = +ara%(v[2]):2
ben = +in(ben):2
bs = +ba%(v[2]):2
cs = +rs%(v[2]):2
cz_qwerty = +cz(qwerty):2
dev = +in(deva):2
dvorak = +us(dvorak):2
dzdwi = +bt%(v[2]):2
el = +gr%(v[2]):2
en_US = +latin%(v[2]):2
guj = +in(guj):2
gur = +in(guru):2
iu = +ca(ike):2
lo = +la%(v[2]):2
kan = +in(kan):2
mi = +mao%(v[2]):2
ml = +in(mal):2
ogham = +ie(ogam):2
ori = +ie(ori):2
sapmi = +no(smi):2
sr = +srp%(v[2]):2
syr = +sy(syc):2
tel = +in(tel):2
tml = +in(tam):2
yu = +srp%(v[2]):2
fr-latin9 = +fr(latin9):2
us_intl = +us(alt-intl):2
ben(basic) = +in(ben):2
ben(probhat) = +in(ben_probhat):2
dev(basic) = +in(deva):2
@ -485,15 +523,32 @@
! layout[3] = symbols
ar = +ara%(v[3]):3
ben = +in(ben):3
bs = +ba%(v[3]):3
cs = +rs%(v[3]):3
cz_qwerty = +cz(qwerty):3
dev = +in(deva):3
dvorak = +us(dvorak):3
dzdwi = +bt%(v[3]):3
el = +gr%(v[3]):3
en_US = +latin%(v[3]):3
guj = +in(guj):3
gur = +in(guru):3
iu = +ca(ike):3
lo = +la%(v[3]):3
kan = +in(kan):3
mi = +mao%(v[3]):3
ml = +in(mal):3
ogham = +ie(ogam):3
ori = +ie(ori):3
sapmi = +no(smi):3
sr = +srp%(v[3]):3
syr = +sy(syc):3
tel = +in(tel):3
tml = +in(tam):3
yu = +srp%(v[3]):3
fr-latin9 = +fr(latin9):3
us_intl = +us(alt-intl):3
ben(basic) = +in(ben):3
ben(probhat) = +in(ben_probhat):3
dev(basic) = +in(deva):3
@ -547,15 +602,32 @@
! layout[4] = symbols
ar = +ara%(v[4]):4
ben = +in(ben):4
bs = +ba%(v[4]):4
cs = +rs%(v[4]):4
cz_qwerty = +cz(qwerty):4
dev = +in(deva):4
dvorak = +us(dvorak):4
dzdwi = +bt%(v[4]):4
el = +gr%(v[4]):4
en_US = +latin%(v[4]):4
guj = +in(guj):4
gur = +in(guru):4
iu = +ca(ike):4
lo = +la%(v[4]):4
kan = +in(kan):4
mi = +mao%(v[4]):4
ml = +in(mal):4
ogham = +ie(ogam):4
ori = +ie(ori):4
sapmi = +no(smi):4
sr = +srp%(v[4]):4
syr = +sy(syc):4
tel = +in(tel):4
tml = +in(tam):4
yu = +srp%(v[4]):4
fr-latin9 = +fr(latin9):4
us_intl = +us(alt-intl):4
ben(basic) = +in(ben):4
ben(probhat) = +in(ben_probhat):4
dev(basic) = +in(deva):4
@ -761,7 +833,20 @@
yu unicodeyz = +srp(latinunicodeyz):4
! model = symbols
* = +inet(evdev)
$evdevkbds = +inet(evdev)+inet(%m)
* = +inet(evdev)
// Neo special modifier-keys
! layout variant = compat
de neo = +neo_mods
! layout[1] variant[1] = compat
de neo = +neo_mods
! layout[2] variant[2] = compat
de neo = +neo_mods:2
! layout[3] variant[3] = compat
de neo = +neo_mods:3
! layout[4] variant[4] = compat
de neo = +neo_mods:4
! model layout = compat
pc98 nec_vndr/jp = pc98(basic)
@ -804,7 +889,6 @@
altwin:ctrl_alt_win = +altwin(ctrl_alt_win)
altwin:meta_win = +altwin(meta_win)
altwin:left_meta_win = +altwin(left_meta_win)
altwin:super_win = +altwin(super_win)
altwin:hyper_win = +altwin(hyper_win)
altwin:alt_super_win = +altwin(alt_super_win)
altwin:swap_lalt_lwin = +altwin(swap_lalt_lwin)
@ -899,6 +983,7 @@
shift:breaks_caps = +shift(breaks_caps)
esperanto:qwerty = +epo(qwerty)
esperanto:dvorak = +epo(dvorak)
terminate:ctrl_alt_bksp = +terminate(ctrl_alt_bksp)
shift:both_capslock = +shift(both_capslock)
shift:lshift_both_capslock = +shift(lshift_both_capslock)
shift:rshift_both_capslock = +shift(rshift_both_capslock)
@ -924,6 +1009,7 @@
lv5:rwin_switch_numlock_cancel = +level5(rwin_switch_numlock_cancel)
! option = compat
grp_led:num = +lednum(group_lock)
grp_led:caps = +ledcaps(group_lock)

View File

@ -86,13 +86,6 @@
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>jp106</name>
<description>Japanese 106-key</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>pc98</name>
@ -121,13 +114,6 @@
<vendor>A4Tech</vendor>
</configItem>
</model>
<model>
<configItem>
<name>abnt2</name>
<description>Brazilian ABNT2</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>airkey</name>
@ -259,6 +245,13 @@
<vendor>Cherry</vendor>
</configItem>
</model>
<model>
<configItem>
<name>cherrybunlim</name>
<description>Cherry B.UNLIMITED</description>
<vendor>Cherry</vendor>
</configItem>
</model>
<model>
<configItem>
<name>chicony</name>
@ -447,6 +440,13 @@
<vendor>Genius</vendor>
</configItem>
</model>
<model>
<configItem>
<name>geniuskkb2050hs</name>
<description>Genius KKB-2050HS</description>
<vendor>Genius</vendor>
</configItem>
</model>
<model>
<configItem>
<name>gyration</name>
@ -667,7 +667,7 @@
<model>
<configItem>
<name>logicdpa2</name>
<description>Logitech Cordless Desktop Pro (alternate option2)</description>
<description>Logitech Cordless Desktop Pro (alternate option 2)</description>
<vendor>Logitech</vendor>
</configItem>
</model>
@ -972,6 +972,13 @@
<vendor>Trust</vendor>
</configItem>
</model>
<model>
<configItem>
<name>trust_slimline</name>
<description>Trust Slimline</description>
<vendor>Trust</vendor>
</configItem>
</model>
<model>
<configItem>
<name>yahoo</name>
@ -1070,13 +1077,6 @@
<vendor>eMachines</vendor>
</configItem>
</model>
<model>
<configItem>
<name>kr106</name>
<description>Korean 106-key</description>
<vendor>Generic</vendor>
</configItem>
</model>
<model>
<configItem>
<name>evdev</name>
@ -2348,6 +2348,13 @@
<description>Breton</description>
</configItem>
</variant>
<variant>
<configItem>
<name>oci</name>
<description>Occitan</description>
<languageList><iso639Id>oci</iso639Id></languageList>
</configItem>
</variant>
<variant>
<configItem>
<name>geo</name>
@ -2822,7 +2829,7 @@
<layout>
<configItem>
<name>kg</name>
<shortDescription>Kir</shortDescription>
<shortDescription>Kgz</shortDescription>
<description>Kyrgyzstan</description>
<languageList><iso639Id>kir</iso639Id></languageList>
</configItem>
@ -2968,6 +2975,12 @@
<description>LEKPa</description>
</configItem>
</variant>
<variant>
<configItem>
<name>balticplus</name>
<description>Baltic+</description>
</configItem>
</variant>
</variantList>
</layout>
<layout>
@ -3177,7 +3190,7 @@
<variant>
<configItem>
<name>dvorak_altquotes</name>
<description>Dvorak, Polish quotes on key "1/!"</description>
<description>Dvorak, Polish quotes on key 1</description>
</configItem>
</variant>
<variant>
@ -3331,6 +3344,12 @@
<description>Phonetic</description>
</configItem>
</variant>
<variant>
<configItem>
<name>phonetic_winkeys</name>
<description>Phonetic Winkeys</description>
</configItem>
</variant>
<variant>
<configItem>
<name>typewriter</name>
@ -3406,6 +3425,12 @@
<languageList><iso639Id>xal</iso639Id></languageList>
</configItem>
</variant>
<variant>
<configItem>
<name>dos</name>
<description>DOS</description>
</configItem>
</variant>
</variantList>
</layout>
<layout>
@ -3885,8 +3910,8 @@
</variant>
<variant>
<configItem>
<name>unicode</name>
<description>Unicode</description>
<name>legacy</name>
<description>Legacy</description>
</configItem>
</variant>
<variant>
@ -3940,6 +3965,12 @@
<languageList><iso639Id>eng</iso639Id></languageList>
</configItem>
<variantList>
<variant>
<configItem>
<name>extd</name>
<description>Extended - Winkeys</description>
</configItem>
</variant>
<variant>
<configItem>
<name>intl</name>
@ -4195,7 +4226,16 @@
</layout>
<layout>
<configItem>
<name>braille</name>
<name>sn</name>
<shortDescription>Sen</shortDescription>
<description>Senegal</description>
<languageList><iso639Id>wol</iso639Id></languageList>
</configItem>
<variantList/>
</layout>
<layout>
<configItem>
<name>brai</name>
<shortDescription>Brl</shortDescription>
<description>Braille</description>
</configItem>
@ -4214,6 +4254,22 @@
</variant>
</variantList>
</layout>
<layout>
<configItem>
<name>tm</name>
<shortDescription>Tkm</shortDescription>
<description>Turkmenistan</description>
<languageList><iso639Id>tuk</iso639Id></languageList>
</configItem>
<variantList>
<variant>
<configItem>
<name>alt</name>
<description>Alt-Q</description>
</configItem>
</variant>
</variantList>
</layout>
</layoutList>
<optionList>
<group allowMultipleSelection="true">
@ -4472,7 +4528,7 @@
<option>
<configItem>
<name>lv3:enter_switch</name>
<description>Press Enter key on keypad to choose 3rd level.</description>
<description>Enter on keypad</description>
</configItem>
</option>
<option>
@ -4773,12 +4829,6 @@
<description>Meta is mapped to Left Win</description>
</configItem>
</option>
<option>
<configItem>
<name>altwin:super_win</name>
<description>Super is mapped to Win keys</description>
</configItem>
</option>
<option>
<configItem>
<name>altwin:hyper_win</name>
@ -5108,5 +5158,17 @@
</configItem>
</option>
</group>
<group allowMultipleSelection="true">
<configItem>
<name>terminate</name>
<description>Key sequence to kill the X server</description>
</configItem>
<option>
<configItem>
<name>terminate:ctrl_alt_bksp</name>
<description>Control + Alt + Backspace</description>
</configItem>
</option>
</group>
</optionList>
</xkbConfigRegistry>

View File

@ -62,7 +62,7 @@ xkb_symbols "nodeadkeys" {
name[Group1]="Germany - Eliminate dead keys";
key <TLDE> { [asciicircum, degree, notsign, notsign ] };
key <AE12> { [apostrophe, grave, cedilla, cedilla ] };
key <AE12> { [ acute, grave, cedilla, cedilla ] };
key <AD11> { [udiaeresis, Udiaeresis, diaeresis, diaeresis ] };
key <AD12> { [ plus, asterisk, asciitilde, macron ] };
key <AC10> { [odiaeresis, Odiaeresis, doubleacute, doubleacute ] };
@ -211,6 +211,7 @@ xkb_symbols "sundeadkeys" {
name[Group1]="Germany - Sun dead keys";
};
// German NEO-Layout Version 2
// adopted 2004 by Hanno Behrens <Hanno.Behrens@gmx.de>
// inspired by Dvorak/de-ergo http://www.goebel-consult.de/de-ergo/
@ -227,13 +228,7 @@ xkb_symbols "sundeadkeys" {
// $Revision$, $Date$
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo" {
include "shift(both_capslock)"
include "level3(caps_switch)"
include "level3(bksl_switch)"
include "level5(lsgt_switch_numlock)"
include "level5(ralt_switch_numlock)"
xkb_symbols "neo_base" {
name[Group1]= "Germany - Neo 2";
@ -248,7 +243,7 @@ xkb_symbols "neo" {
// Compose (not a level): Mod3 + Tab
// Feststelltaste (Capslock): Shift + Shift
// Mod4-Lock: Mod4 + Mod4
//
// Mod4-Lock: Shift + Mod3 + Tab
// Legend
// ===============
@ -266,11 +261,8 @@ xkb_symbols "neo" {
// Tab as Multi_key (Compose)
// --------------------------------------------------------------
key <TAB> {
symbols[Group1]= [ Tab, ISO_Left_Tab, Multi_key, Num_Lock, NoSymbol, NoSymbol, NoSymbol, Num_Lock ],
actions[Group1]= [ NoAction(), NoAction(), NoAction(), LockMods(modifiers=NumLock), NoAction(), NoAction(), NoAction(), LockMods(modifiers=NumLock) ]
};
modifier_map Mod2 { <TAB> };
key <TAB> { [ Tab, ISO_Left_Tab, Multi_key, ISO_Level5_Lock, NoSymbol, NoSymbol, NoSymbol, ISO_Level5_Lock ] };
// Number row
// --------------------------------------------------------------
@ -389,6 +381,18 @@ xkb_symbols "neo" {
key <KPDL> { [ KP_Separator, KP_Decimal, period, apostrophe, KP_Delete, KP_Delete, quotedbl, NoSymbol ] };
};
partial alphanumeric_keys modifier_keys keypad_keys
xkb_symbols "neo" {
include "de(neo_base)"
include "shift(both_capslock)"
include "level3(caps_switch)"
include "level3(bksl_switch)"
include "level5(lsgt_switch_numlock)"
include "level5(ralt_switch_numlock)"
};
// Copied from macintosh_vndr/de
// olh@suse.de very close to MacOS map

View File

@ -22,7 +22,7 @@ xkb_symbols "rctrl_switch" {
// as some applications get confused by it.
partial modifier_keys
xkb_symbols "lsgt_switch_numlock" {
xkb_symbols "neomod_map" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
@ -30,137 +30,99 @@ xkb_symbols "lsgt_switch_numlock" {
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
key <HYPR> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = NumLock,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=NumLock) ]
};
modifier_map Mod2 { <HYPR> };
};
partial modifier_keys
xkb_symbols "lsgt_switch_numlock" {
include "level5(neomod_map)"
key <LSGT> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <LSGT> };
};
partial modifier_keys
xkb_symbols "lwin_switch_numlock" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <LWIN> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <LWIN> };
};
partial modifier_keys
xkb_symbols "ralt_switch_numlock" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <RALT> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <RALT> };
};
partial modifier_keys
xkb_symbols "rwin_switch_numlock" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <RWIN> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <RWIN> };
};
partial modifier_keys
xkb_symbols "lsgt_switch_numlock_cancel" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <LSGT> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <LSGT> };
};
partial modifier_keys
xkb_symbols "lwin_switch_numlock_cancel" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <LWIN> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <LWIN> };
};
partial modifier_keys
xkb_symbols "ralt_switch_numlock_cancel" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <RALT> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <RALT> };
};
partial modifier_keys
xkb_symbols "rwin_switch_numlock_cancel" {
key <MDSW> {
type[Group1] = "ONE_LEVEL",
vmods[Group1] = LevelFive,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=LevelFive) ]
};
modifier_map Mod3 { <MDSW> };
include "level5(neomod_map)"
key <RWIN> {
vmods= NumLock,
key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock, Num_Lock ],
actions[Group1] = [ SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), SetMods(modifiers=LevelFive), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock), LockMods(modifiers=NumLock) ]
type[Group1] = "EIGHT_LEVEL_NEO_LOCKS",
symbols[Group1] = [ ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Shift, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock, ISO_Level5_Lock ]
};
modifier_map Mod2 { <RWIN> };
};

View File

@ -23,8 +23,7 @@ partial modifier_keys
xkb_symbols "lshift_both_capslock" {
key <LFSH> {
type[Group1]="TWO_LEVEL",
symbols[Group1] = [ Shift_L, Caps_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ]
symbols[Group1] = [ Shift_L, Caps_Lock ]
};
};
// When pressed together with another Shift key, set or unset Lock.
@ -32,8 +31,7 @@ partial modifier_keys
xkb_symbols "rshift_both_capslock" {
key <RTSH> {
type[Group1]="TWO_LEVEL",
symbols[Group1] = [ Shift_R, Caps_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ]
symbols[Group1] = [ Shift_R, Caps_Lock ]
};
};
partial modifier_keys
@ -47,8 +45,7 @@ partial modifier_keys
xkb_symbols "lshift_both_capslock_cancel" {
key <LFSH> {
type[Group1]="ALPHABETIC",
symbols[Group1] = [ Shift_L, Caps_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ]
symbols[Group1] = [ Shift_L, Caps_Lock ]
};
};
// When pressed alone, release Lock, whan pressed with another Shift key, set Lock.
@ -56,8 +53,7 @@ partial modifier_keys
xkb_symbols "rshift_both_capslock_cancel" {
key <RTSH> {
type[Group1]="ALPHABETIC",
symbols[Group1] = [ Shift_R, Caps_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Lock) ]
symbols[Group1] = [ Shift_R, Caps_Lock ]
};
};
partial modifier_keys
@ -72,8 +68,7 @@ partial modifier_keys
xkb_symbols "lshift_both_shiftlock" {
key <LFSH> {
type[Group1]="TWO_LEVEL",
symbols[Group1] = [ Shift_L, Shift_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Shift) ]
symbols[Group1] = [ Shift_L, Shift_Lock ]
};
};
// When pressed together with another Shift key, lock/unlock Shift.
@ -81,8 +76,7 @@ partial modifier_keys
xkb_symbols "rshift_both_shiftlock" {
key <RTSH> {
type[Group1]="TWO_LEVEL",
symbols[Group1] = [ Shift_R, Shift_Lock ],
actions[Group1] = [ SetMods(modifiers=Shift), LockMods(modifiers=Shift) ]
symbols[Group1] = [ Shift_R, Shift_Lock ]
};
};
partial modifier_keys

View File

@ -60,11 +60,6 @@ partial default xkb_types "default" {
// 'NumLock' is used for the (Neo-)Mod4-Lock.
modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
preserve[LevelFive+Shift] = Shift;
preserve[NumLock+Shift] = Shift;
preserve[Lock+LevelFive+Shift] = Shift;
preserve[Lock+NumLock+Shift] = Shift;
map[None] = Level1;
map[Shift] = Level2;
map[LevelThree] = Level3;
@ -106,6 +101,11 @@ partial default xkb_types "default" {
map[Lock+NumLock+LevelFive+LevelThree] = Level3;
map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4;
preserve[LevelFive+Shift] = Shift;
preserve[NumLock+Shift] = Shift;
preserve[Lock+LevelFive+Shift] = Shift;
preserve[Lock+NumLock+Shift] = Shift;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Alt Base";
@ -120,9 +120,6 @@ partial default xkb_types "default" {
// 'NumLock' is used for the (Neo-)Mod4-Lock.
modifiers = Shift + Lock + LevelThree + NumLock + LevelFive;
preserve[LevelFive+Shift] = Shift;
preserve[NumLock+Shift] = Shift;
map[None] = Level1;
map[Shift] = Level2;
map[LevelThree] = Level3;
@ -164,6 +161,9 @@ partial default xkb_types "default" {
map[Lock+NumLock+LevelFive+LevelThree] = Level3;
map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4;
preserve[LevelFive+Shift] = Shift;
preserve[NumLock+Shift] = Shift;
level_name[Level1] = "Base";
level_name[Level2] = "Shift";
level_name[Level3] = "Alt Base";