diff options
author | stephan <stephan@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2009-05-28 18:22:07 +0000 |
---|---|---|
committer | stephan <stephan@b9310e46-f624-0410-8ea1-cfbb3a30dc96> | 2009-05-28 18:22:07 +0000 |
commit | aa1558e403c7d626fe38d8ec452557c5f2037dc4 (patch) | |
tree | 9be9b1b285c5b87a8b3b7aad4d4475e4082289a4 | |
parent | ff7ec649a4be75c8200c1c35b8ca6d768d78b546 (diff) | |
download | neo-layout-aa1558e403c7d626fe38d8ec452557c5f2037dc4.tar.gz neo-layout-aa1558e403c7d626fe38d8ec452557c5f2037dc4.tar.bz2 neo-layout-aa1558e403c7d626fe38d8ec452557c5f2037dc4.zip |
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.
git-svn-id: https://svn.neo-layout.org@1879 b9310e46-f624-0410-8ea1-cfbb3a30dc96
-rw-r--r-- | linux/Makefile | 6 | ||||
-rw-r--r-- | linux/X/compat/neo_mods | 30 | ||||
-rw-r--r-- | linux/X/rules/base | 110 | ||||
-rw-r--r-- | linux/X/rules/base.xml | 130 | ||||
-rw-r--r-- | linux/X/rules/evdev | 108 | ||||
-rw-r--r-- | linux/X/rules/evdev.xml | 130 | ||||
-rw-r--r-- | linux/X/symbols/de | 32 | ||||
-rw-r--r-- | linux/X/symbols/level5 | 142 | ||||
-rw-r--r-- | linux/X/symbols/shift | 18 | ||||
-rw-r--r-- | linux/X/types/level5 | 16 |
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"; |