summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--linux/Makefile6
-rw-r--r--linux/X/compat/neo_mods30
-rw-r--r--linux/X/rules/base110
-rw-r--r--linux/X/rules/base.xml130
-rw-r--r--linux/X/rules/evdev108
-rw-r--r--linux/X/rules/evdev.xml130
-rw-r--r--linux/X/symbols/de32
-rw-r--r--linux/X/symbols/level5142
-rw-r--r--linux/X/symbols/shift18
-rw-r--r--linux/X/types/level516
10 files changed, 504 insertions, 218 deletions
diff --git a/linux/Makefile b/linux/Makefile
index 3f4a343..5a371f4 100644
--- a/linux/Makefile
+++ b/linux/Makefile
@@ -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}
diff --git a/linux/X/compat/neo_mods b/linux/X/compat/neo_mods
new file mode 100644
index 0000000..b45f576
--- /dev/null
+++ b/linux/X/compat/neo_mods
@@ -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);
+ };
+};
diff --git a/linux/X/rules/base b/linux/X/rules/base
index 70be19c..7f74c37 100644
--- a/linux/X/rules/base
+++ b/linux/X/rules/base
@@ -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)
diff --git a/linux/X/rules/base.xml b/linux/X/rules/base.xml
index d5868e7..f6fc72d 100644
--- a/linux/X/rules/base.xml
+++ b/linux/X/rules/base.xml
@@ -88,13 +88,6 @@
</model>
<model>
<configItem>
- <name>jp106</name>
- <description>Japanese 106-key</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>pc98</name>
<description>PC-98xx Series</description>
<vendor>Generic</vendor>
@@ -123,13 +116,6 @@
</model>
<model>
<configItem>
- <name>abnt2</name>
- <description>Brazilian ABNT2</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>airkey</name>
<description>Acer AirKey V</description>
<vendor>Acer</vendor>
@@ -261,6 +247,13 @@
</model>
<model>
<configItem>
+ <name>cherrybunlim</name>
+ <description>Cherry B.UNLIMITED</description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>chicony</name>
<description>Chicony Internet Keyboard</description>
<vendor>Chicony</vendor>
@@ -449,6 +442,13 @@
</model>
<model>
<configItem>
+ <name>geniuskkb2050hs</name>
+ <description>Genius KKB-2050HS</description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>gyration</name>
<description>Gyration</description>
<vendor>Gyration</vendor>
@@ -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>
@@ -974,6 +974,13 @@
</model>
<model>
<configItem>
+ <name>trust_slimline</name>
+ <description>Trust Slimline</description>
+ <vendor>Trust</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>yahoo</name>
<description>Yahoo! Internet Keyboard</description>
<vendor>Yahoo!</vendor>
@@ -1072,13 +1079,6 @@
</model>
<model>
<configItem>
- <name>kr106</name>
- <description>Korean 106-key</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>evdev</name>
<description>Evdev-managed keyboard</description>
<vendor>Generic</vendor>
@@ -2350,6 +2350,13 @@
</variant>
<variant>
<configItem>
+ <name>oci</name>
+ <description>Occitan</description>
+ <languageList><iso639Id>oci</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>geo</name>
<description>Georgian AZERTY Tskapo</description>
<languageList><iso639Id>geo</iso639Id></languageList>
@@ -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>
@@ -3333,6 +3346,12 @@
</variant>
<variant>
<configItem>
+ <name>phonetic_winkeys</name>
+ <description>Phonetic Winkeys</description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>typewriter</name>
<description>Typewriter</description>
</configItem>
@@ -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>
@@ -3942,6 +3967,12 @@
<variantList>
<variant>
<configItem>
+ <name>extd</name>
+ <description>Extended - Winkeys</description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>intl</name>
<description>International (with dead keys)</description>
</configItem>
@@ -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>
@@ -4775,12 +4831,6 @@
</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>
<description>Hyper is mapped to Win-keys</description>
</configItem>
@@ -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>
diff --git a/linux/X/rules/evdev b/linux/X/rules/evdev
index 8ca0bb5..ac65687 100644
--- a/linux/X/rules/evdev
+++ b/linux/X/rules/evdev
@@ -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)
diff --git a/linux/X/rules/evdev.xml b/linux/X/rules/evdev.xml
index d5868e7..f6fc72d 100644
--- a/linux/X/rules/evdev.xml
+++ b/linux/X/rules/evdev.xml
@@ -88,13 +88,6 @@
</model>
<model>
<configItem>
- <name>jp106</name>
- <description>Japanese 106-key</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>pc98</name>
<description>PC-98xx Series</description>
<vendor>Generic</vendor>
@@ -123,13 +116,6 @@
</model>
<model>
<configItem>
- <name>abnt2</name>
- <description>Brazilian ABNT2</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>airkey</name>
<description>Acer AirKey V</description>
<vendor>Acer</vendor>
@@ -261,6 +247,13 @@
</model>
<model>
<configItem>
+ <name>cherrybunlim</name>
+ <description>Cherry B.UNLIMITED</description>
+ <vendor>Cherry</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>chicony</name>
<description>Chicony Internet Keyboard</description>
<vendor>Chicony</vendor>
@@ -449,6 +442,13 @@
</model>
<model>
<configItem>
+ <name>geniuskkb2050hs</name>
+ <description>Genius KKB-2050HS</description>
+ <vendor>Genius</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>gyration</name>
<description>Gyration</description>
<vendor>Gyration</vendor>
@@ -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>
@@ -974,6 +974,13 @@
</model>
<model>
<configItem>
+ <name>trust_slimline</name>
+ <description>Trust Slimline</description>
+ <vendor>Trust</vendor>
+ </configItem>
+ </model>
+ <model>
+ <configItem>
<name>yahoo</name>
<description>Yahoo! Internet Keyboard</description>
<vendor>Yahoo!</vendor>
@@ -1072,13 +1079,6 @@
</model>
<model>
<configItem>
- <name>kr106</name>
- <description>Korean 106-key</description>
- <vendor>Generic</vendor>
- </configItem>
- </model>
- <model>
- <configItem>
<name>evdev</name>
<description>Evdev-managed keyboard</description>
<vendor>Generic</vendor>
@@ -2350,6 +2350,13 @@
</variant>
<variant>
<configItem>
+ <name>oci</name>
+ <description>Occitan</description>
+ <languageList><iso639Id>oci</iso639Id></languageList>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>geo</name>
<description>Georgian AZERTY Tskapo</description>
<languageList><iso639Id>geo</iso639Id></languageList>
@@ -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>
@@ -3333,6 +3346,12 @@
</variant>
<variant>
<configItem>
+ <name>phonetic_winkeys</name>
+ <description>Phonetic Winkeys</description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>typewriter</name>
<description>Typewriter</description>
</configItem>
@@ -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>
@@ -3942,6 +3967,12 @@
<variantList>
<variant>
<configItem>
+ <name>extd</name>
+ <description>Extended - Winkeys</description>
+ </configItem>
+ </variant>
+ <variant>
+ <configItem>
<name>intl</name>
<description>International (with dead keys)</description>
</configItem>
@@ -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>
@@ -4775,12 +4831,6 @@
</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>
<description>Hyper is mapped to Win-keys</description>
</configItem>
@@ -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>
diff --git a/linux/X/symbols/de b/linux/X/symbols/de
index 32d57bc..cd998b9 100644
--- a/linux/X/symbols/de
+++ b/linux/X/symbols/de
@@ -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
diff --git a/linux/X/symbols/level5 b/linux/X/symbols/level5
index 35b8186..c722d87 100644
--- a/linux/X/symbols/level5
+++ b/linux/X/symbols/level5
@@ -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> };
};
diff --git a/linux/X/symbols/shift b/linux/X/symbols/shift
index ac39f34..ccb4ae1 100644
--- a/linux/X/symbols/shift
+++ b/linux/X/symbols/shift
@@ -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
diff --git a/linux/X/types/level5 b/linux/X/types/level5
index 631564a..b361644 100644
--- a/linux/X/types/level5
+++ b/linux/X/types/level5
@@ -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";
@@ -119,9 +119,6 @@ partial default xkb_types "default" {
type "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC" {
// '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;
@@ -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";