diff options
-rw-r--r-- | linux/X/compat/caps | 12 | ||||
-rw-r--r-- | linux/X/compat/level5 | 56 | ||||
-rw-r--r-- | linux/X/compat/misc | 127 | ||||
-rw-r--r-- | linux/X/compat/neo_mods | 30 | ||||
-rw-r--r-- | linux/X/rules/base | 51 | ||||
-rw-r--r-- | linux/X/rules/base.xml | 148 | ||||
-rw-r--r-- | linux/X/rules/evdev | 55 | ||||
-rw-r--r-- | linux/X/rules/evdev.xml | 148 | ||||
-rw-r--r-- | linux/X/symbols/de | 18 | ||||
-rw-r--r-- | linux/X/symbols/level3 | 6 | ||||
-rw-r--r-- | linux/X/symbols/level5 | 46 | ||||
-rw-r--r-- | linux/X/types/level5 | 140 |
12 files changed, 543 insertions, 294 deletions
diff --git a/linux/X/compat/caps b/linux/X/compat/caps new file mode 100644 index 0000000..d787ab6 --- /dev/null +++ b/linux/X/compat/caps @@ -0,0 +1,12 @@ +partial xkb_compatibility "caps_lock" { + // Keysym Caps_Lock locks Lock modifier. + // With this, the keysym Caps_Lock can be used without binding the whole + // key to a real modifier. + // This is essential when you don't want to use caps lock on the first + // level. + // This should not have any compatibility issues when used together with + // other layouts which don't utilize this capability. + interpret Caps_Lock { + action = LockMods(modifiers = Lock); + }; +}; diff --git a/linux/X/compat/level5 b/linux/X/compat/level5 new file mode 100644 index 0000000..4769354 --- /dev/null +++ b/linux/X/compat/level5 @@ -0,0 +1,56 @@ +// $XKeyboardConfig$ +// $Xorg: level5,v 1.3 2000/08/17 19:54:34 cpqbld Exp $ + +// Fairly complete set of symbol interpretations +// to provide reasonable default behavior + +// $XFree86: xc/programs/xkbcomp/compat/iso9995,v 1.3 2003/02/21 03:16:34 dawes Exp $ + +default partial xkb_compatibility "default" { + virtual_modifiers LevelFive; + + interpret.repeat= False; + setMods.clearLocks= True; + latchMods.clearLocks= True; + latchMods.latchToLock= True; + + interpret ISO_Level5_Shift+Any { + useModMapMods= level1; + virtualModifier= LevelFive; + action= SetMods(modifiers=LevelFive); + }; + + interpret ISO_Level5_Shift { + action= SetMods(modifiers=LevelFive); + }; + + interpret ISO_Level5_Latch+Any { + virtualModifier= LevelFive; + action= LatchMods(modifiers=LevelFive); + }; + + interpret ISO_Level5_Latch { + action= LatchMods(modifiers=LevelFive); + }; + + interpret ISO_Level5_Lock+Any { + virtualModifier= LevelFive; + action= LockMods(modifiers=LevelFive); + }; + + interpret ISO_Level5_Lock { + action= LockMods(modifiers=LevelFive); + }; +}; +partial xkb_compatibility "level5_lock" { + // This defines a Level5-Lock using the NumLock real modifier in order to + // create arbitrary level-behaviour, which would not be possible with the + // virtual modifier. + // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK + // See also: symbols/level5(lock) + virtual_modifiers NumLock; + + interpret ISO_Level5_Lock { + action = LockMods(modifiers = NumLock); + }; +}; diff --git a/linux/X/compat/misc b/linux/X/compat/misc new file mode 100644 index 0000000..68cda95 --- /dev/null +++ b/linux/X/compat/misc @@ -0,0 +1,127 @@ +// $XdotOrg: xc/programs/xkbcomp/compat/misc,v 1.1.4.4 2004/03/05 13:41:28 eich Exp $ +// $Xorg: misc,v 1.3 2000/08/17 19:54:34 cpqbld Exp $ +// +// +// +// $XFree86: xc/programs/xkbcomp/compat/misc,v 1.4 2003/05/15 13:31:57 pascal Exp $ + +default partial xkb_compatibility "misc" { + + virtual_modifiers Alt,Meta,Super,Hyper,ScrollLock; + + // Interpretations for some other useful keys + + interpret Terminate_Server { + action = Terminate(); + }; + + setMods.clearLocks= True; + + // Sets the "Alt" virtual modifier + + interpret Alt_L+Any { + //useModMapMods= level1; + virtualModifier= Alt; + action = SetMods(modifiers=modMapMods); + }; + + interpret Alt_L { + action = SetMods(modifiers=Alt); + }; + + interpret Alt_R+Any { + //useModMapMods= level1; + virtualModifier= Alt; + action = SetMods(modifiers=modMapMods); + }; + + interpret Alt_R { + action = SetMods(modifiers=Alt); + }; + + // Sets the "Meta" virtual modifier + + interpret Meta_L+Any { +// useModMapMods= level1; + virtualModifier= Meta; + action = SetMods(modifiers=modMapMods); + }; + + interpret Meta_L { + action = SetMods(modifiers=Meta); + }; + + interpret Meta_R+Any { + //useModMapMods= level1; + virtualModifier= Meta; + action = SetMods(modifiers=modMapMods); + }; + + interpret Meta_R { + action = SetMods(modifiers=Meta); + }; + + // Sets the "Super" virtual modifier + + interpret Super_L+Any { +// useModMapMods= level1; + virtualModifier= Super; + action = SetMods(modifiers=modMapMods); + }; + + interpret Super_L { + action = SetMods(modifiers=Super); + }; + + interpret Super_R+Any { + //useModMapMods= level1; + virtualModifier= Super; + action = SetMods(modifiers=modMapMods); + }; + + interpret Super_R { + action = SetMods(modifiers=Super); + }; + + // Sets the "Hyper" virtual modifier + + interpret Hyper_L+Any { +// useModMapMods= level1; + virtualModifier= Hyper; + action = SetMods(modifiers=modMapMods); + }; + + interpret Hyper_L { + action = SetMods(modifiers=Hyper); + }; + + interpret Hyper_R+Any { + //useModMapMods= level1; + virtualModifier= Hyper; + action = SetMods(modifiers=modMapMods); + }; + + interpret Hyper_R { + action = SetMods(modifiers=Hyper); + }; + + // Sets the "ScrollLock" virtual modifier and + // makes it actually lock when pressed. Sets + // up a map for the scroll lock indicator. + interpret Scroll_Lock+Any { + virtualModifier= ScrollLock; + action = LockMods(modifiers=modMapMods); + }; + + include "ledscroll" +}; + +partial xkb_compatibility "assign_shift_left_action" { + // Because of the irrevertable modifier mapping in symbols/pc <LFSH> is + // getting bound to the Lock modifier when using + // symbols/shift(both_capslock), creating unwanted behaviour. + // This is a quirk, to circumvent the problem. + interpret Shift_L { + action = SetMods(modifiers = Shift); + }; +}; diff --git a/linux/X/compat/neo_mods b/linux/X/compat/neo_mods deleted file mode 100644 index b45f576..0000000 --- a/linux/X/compat/neo_mods +++ /dev/null @@ -1,30 +0,0 @@ -// 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 2f0c8f4..68c29df 100644 --- a/linux/X/rules/base +++ b/linux/X/rules/base @@ -126,9 +126,6 @@ sun6 = sun(type6_usb) sun6euro = sun(type6tuv_usb) pc98 = xfree98(pc98) - evdev = evdev - $nokiamodels = evdev - olpc = evdev $applealu = macintosh(alukbd) macintosh_hhk = macintosh(hhk) macintosh_old = macintosh(old) @@ -953,7 +950,6 @@ a4_rfkb23 = +inet(media_nav_acpi_common) asus_laptop = +inet(media_common) acer_tm_800 = +inet(acer_laptop) - acpi = +inet(acpi_common) benqx730 = +inet(benqx) benqx800 = +inet(benqx) btc5126t = +inet(nav_acpi_common) @@ -1000,32 +996,21 @@ $maclaptop = +inet(apple)+level3(enter_switch) $applealu = +inet(apple) $macs = +inet(apple) - - -// Neo special modifier-keys + ! layout variant = compat - de neo = +neo_mods + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + ! layout[1] variant[1] = compat - de neo = +neo_mods + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + ! layout[2] variant[2] = compat - de neo = +neo_mods:2 + de neo = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2 + ! layout[3] variant[3] = compat - de neo = +neo_mods:3 -! layout[4] variant[4] = compat - de neo = +neo_mods:4 + de neo = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3 -! layout variant = geometry - de neo = pc(pc105) -! layout[1] variant[1] = geometry - de neo = pc(pc105) -! layout[2] variant[2] = geometry - de neo = pc(pc105) -! layout[3] variant[3] = geometry - de neo = pc(pc105) -! layout[4] variant[4] = geometry - de neo = pc(pc105) - - +! layout[4] variant[4] = compat + de neo = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4 ! model layout = compat pc98 nec_vndr/jp = pc98(basic) @@ -1191,14 +1176,14 @@ lv3:caps_switch_latch = +level3(caps_switch_latch) lv3:bksl_switch_latch = +level3(bksl_switch_latch) lv3:lsgt_switch_latch = +level3(lsgt_switch_latch) - lv5:lsgt_switch_numlock = +level5(lsgt_switch_numlock) - lv5:ralt_switch_numlock = +level5(ralt_switch_numlock) - lv5:lwin_switch_numlock = +level5(lwin_switch_numlock) - lv5:rwin_switch_numlock = +level5(rwin_switch_numlock) - lv5:lsgt_switch_numlock_cancel = +level5(lsgt_switch_numlock_cancel) - lv5:ralt_switch_numlock_cancel = +level5(ralt_switch_numlock_cancel) - lv5:lwin_switch_numlock_cancel = +level5(lwin_switch_numlock_cancel) - lv5:rwin_switch_numlock_cancel = +level5(rwin_switch_numlock_cancel) + lv5:lsgt_switch_lock = +level5(lsgt_switch_lock) + lv5:ralt_switch_lock = +level5(ralt_switch_lock) + lv5:lwin_switch_lock = +level5(lwin_switch_lock) + lv5:rwin_switch_lock = +level5(rwin_switch_lock) + lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel) + lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel) + lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel) + lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel) diff --git a/linux/X/rules/base.xml b/linux/X/rules/base.xml index e48c705..952a457 100644 --- a/linux/X/rules/base.xml +++ b/linux/X/rules/base.xml @@ -123,13 +123,6 @@ </model> <model> <configItem> - <name>acpi</name> - <description>ACPI Standard</description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> <name>azonaRF2300</name> <description>Azona RF2300 wireless Internet Keyboard</description> <vendor>Azona</vendor> @@ -1135,13 +1128,6 @@ </model> <model> <configItem> - <name>evdev</name> - <description>Evdev-managed keyboard</description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> <name>benqx</name> <description>BenQ X-Touch</description> <vendor>BenQ</vendor> @@ -2492,6 +2478,19 @@ <languageList><iso639Id>hau</iso639Id></languageList> </configItem> </variant> + <variant> + <configItem> + <name>avn</name> + <description>Avatime</description> + <languageList><iso639Id>avn</iso639Id></languageList> + </configItem> + </variant> + <variant> + <configItem> + <name>gillbt</name> + <description>GILLBT</description> + </configItem> + </variant> </variantList> </layout> <layout> @@ -4416,6 +4415,22 @@ </variant> </variantList> </layout> + <layout> + <configItem> + <name>tz</name> + <shortDescription>Tza</shortDescription> + <description>Tanzania</description> + <languageList><iso639Id>swa</iso639Id></languageList> + </configItem> + </layout> + <layout> + <configItem> + <name>ke</name> + <shortDescription>Ken</shortDescription> + <description>Kenya</description> + <languageList><iso639Id>swa</iso639Id></languageList> + </configItem> + </layout> </layoutList> <optionList> <group allowMultipleSelection="true"> @@ -4698,13 +4713,31 @@ <option> <configItem> <name>lv3:bksl_switch</name> - <description><BKSL>-Key</description> + <description>Backslash</description> </configItem> </option> <option> <configItem> <name>lv3:lsgt_switch</name> - <description><LSGT>-Key</description> + <description><Less/Greater></description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:caps_switch_latch</name> + <description>CapsLock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:bksl_switch_latch</name> + <description>Backslash chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:lsgt_switch_latch</name> + <description><Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> </configItem> </option> </group> @@ -5081,7 +5114,7 @@ <option> <configItem> <name>compose:102</name> - <description>Less-than/Greater-than</description> + <description><Less/Greater></description> </configItem> </option> <option> @@ -5174,24 +5207,6 @@ <description>Both Shift-Keys together toggle ShiftLock</description> </configItem> </option> - <option> - <configItem> - <name>lv3:caps_switch_latch</name> - <description>CapsLock chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:bksl_switch_latch</name> - <description><BKSL>-Key chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lsgt_switch_latch</name> - <description><LSGT>-Key chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> </group> <group allowMultipleSelection="true"> @@ -5225,56 +5240,91 @@ </option> </group> <group allowMultipleSelection="true"> - <configItem> <name>lv5</name> - <description>5th level options</description> + <description>Key to choose 5th level</description> </configItem> <option> <configItem> - <name>lv5:lsgt_switch_numlock</name> - <description><LSGT>-Key chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> + <name>lv5:lsgt_switch_lock</name> + <description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:ralt_switch_lock</name> + <description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lwin_switch_lock</name> + <description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:rwin_switch_lock</name> + <description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lsgt_switch_lock_cancel</name> + <description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:ralt_switch_lock_cancel</name> + <description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lwin_switch_lock_cancel</name> + <description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:ralt_switch_numlock</name> - <description>Right Alt chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> + <name>lv5:rwin_switch_lock_cancel</name> + <description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:lwin_switch_numlock</name> + <name>lv5:lwin_switch_lock</name> <description>Left Win chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> </configItem> </option> <option> <configItem> - <name>lv5:rwin_switch_numlock</name> + <name>lv5:rwin_switch_lock</name> <description>Right Win chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> </configItem> </option> <option> <configItem> - <name>lv5:lsgt_switch_numlock_cancel</name> - <description><LSGT>-Key chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> + <name>lv5:lsgt_switch_lock_cancel</name> + <description><Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:ralt_switch_numlock_cancel</name> + <name>lv5:ralt_switch_lock_cancel</name> <description>Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:lwin_switch_numlock_cancel</name> + <name>lv5:lwin_switch_lock_cancel</name> <description>Left Win chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:rwin_switch_numlock_cancel</name> + <name>lv5:rwin_switch_lock_cancel</name> <description>Right Win chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> @@ -5431,4 +5481,4 @@ </option> </group> </optionList> -</xkbConfigRegistry> +</xkbConfigRegistry>
\ No newline at end of file diff --git a/linux/X/rules/evdev b/linux/X/rules/evdev index 9fa1577..307c2a5 100644 --- a/linux/X/rules/evdev +++ b/linux/X/rules/evdev @@ -932,36 +932,27 @@ * us alt-intl-unicode = +extras/us(alt-intl-unicode):4 * us crd = +extras/us(crd):4 * us intl-unicode = +extras/us(intl-unicode):4 - - -// 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 - -! layout variant = geometry - de neo = pc(pc105) -! layout[1] variant[1] = geometry - de neo = pc(pc105) -! layout[2] variant[2] = geometry - de neo = pc(pc105) -! layout[3] variant[3] = geometry - de neo = pc(pc105) -! layout[4] variant[4] = geometry - de neo = pc(pc105) ! model = symbols $evdevkbds = +inet(evdev)+inet(%m) applealu_jis = +inet(evdev)+macintosh_vndr/jp(alujiskeys) * = +inet(evdev) +! layout variant = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[1] variant[1] = compat + de neo = +caps(caps_lock)+misc(assign_shift_left_action)+level5(level5_lock) + +! layout[2] variant[2] = compat + de neo = +caps(caps_lock):2+misc(assign_shift_left_action):2+level5(level5_lock):2 + +! layout[3] variant[3] = compat + de neo = +caps(caps_lock):3+misc(assign_shift_left_action):3+level5(level5_lock):3 + +! layout[4] variant[4] = compat + de neo = +caps(caps_lock):4+misc(assign_shift_left_action):4+level5(level5_lock):4 + ! model layout = compat pc98 nec_vndr/jp = pc98(basic) * jp = complete+japan @@ -1126,14 +1117,14 @@ lv3:caps_switch_latch = +level3(caps_switch_latch) lv3:bksl_switch_latch = +level3(bksl_switch_latch) lv3:lsgt_switch_latch = +level3(lsgt_switch_latch) - lv5:lsgt_switch_numlock = +level5(lsgt_switch_numlock) - lv5:ralt_switch_numlock = +level5(ralt_switch_numlock) - lv5:lwin_switch_numlock = +level5(lwin_switch_numlock) - lv5:rwin_switch_numlock = +level5(rwin_switch_numlock) - lv5:lsgt_switch_numlock_cancel = +level5(lsgt_switch_numlock_cancel) - lv5:ralt_switch_numlock_cancel = +level5(ralt_switch_numlock_cancel) - lv5:lwin_switch_numlock_cancel = +level5(lwin_switch_numlock_cancel) - lv5:rwin_switch_numlock_cancel = +level5(rwin_switch_numlock_cancel) + lv5:lsgt_switch_lock = +level5(lsgt_switch_lock) + lv5:ralt_switch_lock = +level5(ralt_switch_lock) + lv5:lwin_switch_lock = +level5(lwin_switch_lock) + lv5:rwin_switch_lock = +level5(rwin_switch_lock) + lv5:lsgt_switch_lock_cancel = +level5(lsgt_switch_lock_cancel) + lv5:ralt_switch_lock_cancel = +level5(ralt_switch_lock_cancel) + lv5:lwin_switch_lock_cancel = +level5(lwin_switch_lock_cancel) + lv5:rwin_switch_lock_cancel = +level5(rwin_switch_lock_cancel) diff --git a/linux/X/rules/evdev.xml b/linux/X/rules/evdev.xml index e48c705..952a457 100644 --- a/linux/X/rules/evdev.xml +++ b/linux/X/rules/evdev.xml @@ -123,13 +123,6 @@ </model> <model> <configItem> - <name>acpi</name> - <description>ACPI Standard</description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> <name>azonaRF2300</name> <description>Azona RF2300 wireless Internet Keyboard</description> <vendor>Azona</vendor> @@ -1135,13 +1128,6 @@ </model> <model> <configItem> - <name>evdev</name> - <description>Evdev-managed keyboard</description> - <vendor>Generic</vendor> - </configItem> - </model> - <model> - <configItem> <name>benqx</name> <description>BenQ X-Touch</description> <vendor>BenQ</vendor> @@ -2492,6 +2478,19 @@ <languageList><iso639Id>hau</iso639Id></languageList> </configItem> </variant> + <variant> + <configItem> + <name>avn</name> + <description>Avatime</description> + <languageList><iso639Id>avn</iso639Id></languageList> + </configItem> + </variant> + <variant> + <configItem> + <name>gillbt</name> + <description>GILLBT</description> + </configItem> + </variant> </variantList> </layout> <layout> @@ -4416,6 +4415,22 @@ </variant> </variantList> </layout> + <layout> + <configItem> + <name>tz</name> + <shortDescription>Tza</shortDescription> + <description>Tanzania</description> + <languageList><iso639Id>swa</iso639Id></languageList> + </configItem> + </layout> + <layout> + <configItem> + <name>ke</name> + <shortDescription>Ken</shortDescription> + <description>Kenya</description> + <languageList><iso639Id>swa</iso639Id></languageList> + </configItem> + </layout> </layoutList> <optionList> <group allowMultipleSelection="true"> @@ -4698,13 +4713,31 @@ <option> <configItem> <name>lv3:bksl_switch</name> - <description><BKSL>-Key</description> + <description>Backslash</description> </configItem> </option> <option> <configItem> <name>lv3:lsgt_switch</name> - <description><LSGT>-Key</description> + <description><Less/Greater></description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:caps_switch_latch</name> + <description>CapsLock (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:bksl_switch_latch</name> + <description>Backslash chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> + </configItem> + </option> + <option> + <configItem> + <name>lv3:lsgt_switch_latch</name> + <description><Less/Greater> (chooses 3rd level, latches when pressed together with another 3rd-level-chooser)</description> </configItem> </option> </group> @@ -5081,7 +5114,7 @@ <option> <configItem> <name>compose:102</name> - <description>Less-than/Greater-than</description> + <description><Less/Greater></description> </configItem> </option> <option> @@ -5174,24 +5207,6 @@ <description>Both Shift-Keys together toggle ShiftLock</description> </configItem> </option> - <option> - <configItem> - <name>lv3:caps_switch_latch</name> - <description>CapsLock chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:bksl_switch_latch</name> - <description><BKSL>-Key chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> - <option> - <configItem> - <name>lv3:lsgt_switch_latch</name> - <description><LSGT>-Key chooses 3rd level and latches level three when pressed together with another 3rd-level-chooser</description> - </configItem> - </option> </group> <group allowMultipleSelection="true"> @@ -5225,56 +5240,91 @@ </option> </group> <group allowMultipleSelection="true"> - <configItem> <name>lv5</name> - <description>5th level options</description> + <description>Key to choose 5th level</description> </configItem> <option> <configItem> - <name>lv5:lsgt_switch_numlock</name> - <description><LSGT>-Key chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> + <name>lv5:lsgt_switch_lock</name> + <description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:ralt_switch_lock</name> + <description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lwin_switch_lock</name> + <description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:rwin_switch_lock</name> + <description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lsgt_switch_lock_cancel</name> + <description><Less/Greater> chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:ralt_switch_lock_cancel</name> + <description>Right Alt chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> + </configItem> + </option> + <option> + <configItem> + <name>lv5:lwin_switch_lock_cancel</name> + <description>Left Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:ralt_switch_numlock</name> - <description>Right Alt chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> + <name>lv5:rwin_switch_lock_cancel</name> + <description>Right Win chooses 5th level, locks when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:lwin_switch_numlock</name> + <name>lv5:lwin_switch_lock</name> <description>Left Win chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> </configItem> </option> <option> <configItem> - <name>lv5:rwin_switch_numlock</name> + <name>lv5:rwin_switch_lock</name> <description>Right Win chooses 5th level and toggles level5-Lock when pressed together with another 5th-level-chooser</description> </configItem> </option> <option> <configItem> - <name>lv5:lsgt_switch_numlock_cancel</name> - <description><LSGT>-Key chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> + <name>lv5:lsgt_switch_lock_cancel</name> + <description><Less/Greater> chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:ralt_switch_numlock_cancel</name> + <name>lv5:ralt_switch_lock_cancel</name> <description>Right Alt chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:lwin_switch_numlock_cancel</name> + <name>lv5:lwin_switch_lock_cancel</name> <description>Left Win chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> <option> <configItem> - <name>lv5:rwin_switch_numlock_cancel</name> + <name>lv5:rwin_switch_lock_cancel</name> <description>Right Win chooses 5th level and activates level5-Lock when pressed together with another 5th-level-chooser, one press releases the lock</description> </configItem> </option> @@ -5431,4 +5481,4 @@ </option> </group> </optionList> -</xkbConfigRegistry> +</xkbConfigRegistry>
\ No newline at end of file diff --git a/linux/X/symbols/de b/linux/X/symbols/de index d81869a..60b53b5 100644 --- a/linux/X/symbols/de +++ b/linux/X/symbols/de @@ -257,7 +257,7 @@ xkb_symbols "neo_base" { // Alphanumeric-keys // =============== - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS"; + key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; // Tab as Multi_key (Compose) // -------------------------------------------------------------- @@ -285,7 +285,7 @@ xkb_symbols "neo_base" { // Top row // -------------------------------------------------------------- - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC"; + key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key <AD01> { [ x, X, ellipsis, Greek_xi, Prior, Prior, Greek_XI, NoSymbol ] }; key <AD02> { [ v, V, underscore, NoSymbol, BackSpace, BackSpace, radical, NoSymbol ] }; key <AD03> { [ l, L, bracketleft, Greek_lambda, Up, Up, Greek_LAMBDA, NoSymbol ] }; @@ -300,12 +300,12 @@ xkb_symbols "neo_base" { key <AD11> { [ ssharp, U1E9E, U017F, Greek_finalsmallsigma, U2212, NoSymbol, jot, NoSymbol ] }; - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS"; + key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key <AD12> { [ dead_acute, dead_tilde, dead_stroke, dead_psili, dead_doubleacute, NoSymbol, dead_breve, NoSymbol ] }; // Middle row // -------------------------------------------------------------- - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC"; + key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key <AC01> { [ u, U, backslash, NoSymbol, Home, Home, includedin, NoSymbol ] }; key <AC02> { [ i, I, slash, Greek_iota, Left, Left, integral, NoSymbol ] }; key <AC03> { [ a, A, braceleft, Greek_alpha, Down, Down, U2200, NoSymbol ] }; @@ -330,12 +330,12 @@ xkb_symbols "neo_base" { key <AB06> { [ b, B, plus, Greek_beta, colon, NoSymbol, U21D0, NoSymbol ] }; key <AB07> { [ m, M, percent, Greek_mu, KP_1, KP_1, ifonlyif, NoSymbol ] }; - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS"; + key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; key <AB08> { [ comma, endash, quotedbl, U03F1, KP_2, KP_2, U21D2, NoSymbol ] }; key <AB09> { [ period, enfilledcircbullet, apostrophe, U03D1, KP_3, KP_3, U21A6, NoSymbol ] }; - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC"; + key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK"; key <AB10> { [ j, J, semicolon, Greek_theta, semicolon, NoSymbol, Greek_THETA, NoSymbol ] }; - key.type[Group1] = "EIGHT_LEVEL_NEO_LOCKS"; + key.type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK"; // Space key // -------------------------------------------------------------- @@ -389,8 +389,8 @@ 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)" + include "level5(lsgt_switch_lock)" + include "level5(ralt_switch_lock)" }; // Copied from macintosh_vndr/de diff --git a/linux/X/symbols/level3 b/linux/X/symbols/level3 index f4a0603..c2c6b13 100644 --- a/linux/X/symbols/level3 +++ b/linux/X/symbols/level3 @@ -116,7 +116,7 @@ xkb_symbols "lwin_switch" { key <LWIN> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ] - }; + }; modifier_map Mod5 { ISO_Level3_Shift }; }; @@ -129,7 +129,7 @@ xkb_symbols "rwin_switch" { key <RWIN> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ] - }; + }; modifier_map Mod5 { ISO_Level3_Shift }; }; @@ -141,7 +141,7 @@ xkb_symbols "enter_switch" { key <KPEN> { type[Group1]="ONE_LEVEL", symbols[Group1] = [ ISO_Level3_Shift ] - }; + }; modifier_map Mod5 { ISO_Level3_Shift }; }; diff --git a/linux/X/symbols/level5 b/linux/X/symbols/level5 index ff7041c..19db36c 100644 --- a/linux/X/symbols/level5 +++ b/linux/X/symbols/level5 @@ -21,7 +21,11 @@ xkb_symbols "rctrl_switch" { // corresponding lock, implemented as NumLock. partial modifier_keys -xkb_symbols "neomod_map" { +xkb_symbols "lock" { + // This adds the definitions needed to create a level5-lock behaviour, using + // the real modifier NumLock as a lock indicator. + // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK + // See also: compat/level5(level5_lock) key.type[Group1] = "ONE_LEVEL"; replace key <MDSW> { @@ -40,9 +44,9 @@ xkb_symbols "neomod_map" { }; partial modifier_keys -xkb_symbols "lsgt_switch_numlock" { +xkb_symbols "lsgt_switch_lock" { - include "level5(neomod_map)" + include "level5(lock)" key <LSGT> { type[Group1] = "EIGHT_LEVEL", @@ -51,9 +55,9 @@ xkb_symbols "lsgt_switch_numlock" { }; partial modifier_keys -xkb_symbols "lwin_switch_numlock" { +xkb_symbols "lwin_switch_lock" { - include "level5(neomod_map)" + include "level5(lock)" key <LWIN> { type[Group1] = "EIGHT_LEVEL", @@ -62,9 +66,9 @@ xkb_symbols "lwin_switch_numlock" { }; partial modifier_keys -xkb_symbols "ralt_switch_numlock" { +xkb_symbols "ralt_switch_lock" { - include "level5(neomod_map)" + include "level5(lock)" key <RALT> { type[Group1] = "EIGHT_LEVEL", @@ -73,9 +77,9 @@ xkb_symbols "ralt_switch_numlock" { }; partial modifier_keys -xkb_symbols "rwin_switch_numlock" { +xkb_symbols "rwin_switch_lock" { - include "level5(neomod_map)" + include "level5(lock)" key <RWIN> { type[Group1] = "EIGHT_LEVEL", @@ -84,45 +88,45 @@ xkb_symbols "rwin_switch_numlock" { }; partial modifier_keys -xkb_symbols "lsgt_switch_numlock_cancel" { +xkb_symbols "lsgt_switch_lock_cancel" { - include "level5(neomod_map)" + include "level5(lock)" key <LSGT> { - type[Group1] = "EIGHT_LEVEL_NEO_LOCKS", + type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 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 ] }; }; partial modifier_keys -xkb_symbols "lwin_switch_numlock_cancel" { +xkb_symbols "lwin_switch_lock_cancel" { - include "level5(neomod_map)" + include "level5(lock)" key <LWIN> { - type[Group1] = "EIGHT_LEVEL_NEO_LOCKS", + type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 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 ] }; }; partial modifier_keys -xkb_symbols "ralt_switch_numlock_cancel" { +xkb_symbols "ralt_switch_lock_cancel" { - include "level5(neomod_map)" + include "level5(lock)" key <RALT> { - type[Group1] = "EIGHT_LEVEL_NEO_LOCKS", + type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 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 ] }; }; partial modifier_keys -xkb_symbols "rwin_switch_numlock_cancel" { +xkb_symbols "rwin_switch_lock_cancel" { - include "level5(neomod_map)" + include "level5(lock)" key <RWIN> { - type[Group1] = "EIGHT_LEVEL_NEO_LOCKS", + type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 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 ] }; }; diff --git a/linux/X/types/level5 b/linux/X/types/level5 index b361644..1012d0f 100644 --- a/linux/X/types/level5 +++ b/linux/X/types/level5 @@ -28,36 +28,38 @@ partial default xkb_types "default" { level_name[Level8] = "X Shift Alt"; }; - type "EIGHT_LEVEL_ALPHABETIC" { - modifiers = Shift+Lock+LevelThree+LevelFive; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level4; - map[Lock+Shift+LevelThree] = Level3; - - map[LevelFive] = Level5; - map[Shift+LevelFive] = Level6; - map[Lock+LevelFive] = Level6; - map[LevelThree+LevelFive] = Level7; - map[Shift+LevelThree+LevelFive] = Level8; - map[Lock+LevelThree+LevelFive] = Level8; - map[Lock+Shift+LevelThree+LevelFive] = Level7; - - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - level_name[Level5] = "X"; - level_name[Level6] = "X Shift"; - level_name[Level7] = "X Alt Base"; - level_name[Level8] = "X Shift Alt"; - }; - - type "EIGHT_LEVEL_NEO_LOCKS" { - // 'NumLock' is used for the (Neo-)Mod4-Lock. +// type "EIGHT_LEVEL_ALPHABETIC" { +// modifiers = Shift+Lock+LevelThree+LevelFive; +// map[None] = Level1; +// map[Shift] = Level2; +// map[Lock] = Level2; +// map[LevelThree] = Level3; +// map[Shift+LevelThree] = Level4; +// map[Lock+LevelThree] = Level4; +// map[Lock+Shift+LevelThree] = Level3; + +// map[LevelFive] = Level5; +// map[Shift+LevelFive] = Level6; +// map[Lock+LevelFive] = Level6; +// map[LevelThree+LevelFive] = Level7; +// map[Shift+LevelThree+LevelFive] = Level8; +// map[Lock+LevelThree+LevelFive] = Level8; +// map[Lock+Shift+LevelThree+LevelFive] = Level7; + +// level_name[Level1] = "Base"; +// level_name[Level2] = "Shift"; +// level_name[Level3] = "Alt Base"; +// level_name[Level4] = "Shift Alt"; +// level_name[Level5] = "X"; +// level_name[Level6] = "X Shift"; +// level_name[Level7] = "X Alt Base"; +// level_name[Level8] = "X Shift Alt"; +// }; + + type "EIGHT_LEVEL_LEVEL_FIVE_LOCK" { + // Level5-Lock is implemented by using NumLock, because a real modifier + // is required. + modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; map[None] = Level1; @@ -116,8 +118,10 @@ partial default xkb_types "default" { level_name[Level8] = "X Shift Alt"; }; - type "EIGHT_LEVEL_NEO_LOCKS_QUARTERALPHABETIC" { - // 'NumLock' is used for the (Neo-)Mod4-Lock. + type "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK" { + // Level5-Lock is implemented by using NumLock, because a real modifier + // is required. + modifiers = Shift + Lock + LevelThree + NumLock + LevelFive; map[None] = Level1; @@ -158,8 +162,8 @@ partial default xkb_types "default" { map[Lock+NumLock+LevelFive] = Level2; map[Lock+NumLock+LevelFive+Shift] = Level1; - map[Lock+NumLock+LevelFive+LevelThree] = Level3; - map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level4; + map[Lock+NumLock+LevelFive+LevelThree] = Level4; + map[Lock+NumLock+LevelFive+LevelThree+Shift] = Level3; preserve[LevelFive+Shift] = Shift; preserve[NumLock+Shift] = Shift; @@ -174,40 +178,40 @@ partial default xkb_types "default" { level_name[Level8] = "X Shift Alt"; }; - type "EIGHT_LEVEL_SEMIALPHABETIC" { - modifiers = Shift+Lock+LevelThree+LevelFive; - map[None] = Level1; - map[Shift] = Level2; - map[Lock] = Level2; - map[LevelThree] = Level3; - map[Shift+LevelThree] = Level4; - map[Lock+LevelThree] = Level3; - map[Lock+Shift+LevelThree] = Level4; - - map[LevelFive] = Level5; - map[Shift+LevelFive] = Level6; - map[Lock+LevelFive] = Level6; - map[LevelThree+LevelFive] = Level7; - map[Shift+LevelThree+LevelFive] = Level8; - map[Lock+LevelThree+LevelFive] = Level7; - map[Lock+Shift+LevelThree+LevelFive] = Level8; - - preserve[Lock+LevelThree] = Lock; - preserve[Lock+Shift+LevelThree] = Lock; - preserve[Lock+LevelFive] = Lock; - preserve[Lock+Shift+LevelFive] = Lock; - preserve[Lock+LevelThree+LevelFive] = Lock; - preserve[Lock+Shift+LevelThree+LevelFive] = Lock; - - level_name[Level1] = "Base"; - level_name[Level2] = "Shift"; - level_name[Level3] = "Alt Base"; - level_name[Level4] = "Shift Alt"; - level_name[Level5] = "X"; - level_name[Level6] = "X Shift"; - level_name[Level7] = "X Alt Base"; - level_name[Level8] = "X Shift Alt"; - }; +// type "EIGHT_LEVEL_SEMIALPHABETIC" { +// modifiers = Shift+Lock+LevelThree+LevelFive; +// map[None] = Level1; +// map[Shift] = Level2; +// map[Lock] = Level2; +// map[LevelThree] = Level3; +// map[Shift+LevelThree] = Level4; +// map[Lock+LevelThree] = Level3; +// map[Lock+Shift+LevelThree] = Level4; + +// map[LevelFive] = Level5; +// map[Shift+LevelFive] = Level6; +// map[Lock+LevelFive] = Level6; +// map[LevelThree+LevelFive] = Level7; +// map[Shift+LevelThree+LevelFive] = Level8; +// map[Lock+LevelThree+LevelFive] = Level7; +// map[Lock+Shift+LevelThree+LevelFive] = Level8; + +// preserve[Lock+LevelThree] = Lock; +// preserve[Lock+Shift+LevelThree] = Lock; +// preserve[Lock+LevelFive] = Lock; +// preserve[Lock+Shift+LevelFive] = Lock; +// preserve[Lock+LevelThree+LevelFive] = Lock; +// preserve[Lock+Shift+LevelThree+LevelFive] = Lock; + +// level_name[Level1] = "Base"; +// level_name[Level2] = "Shift"; +// level_name[Level3] = "Alt Base"; +// level_name[Level4] = "Shift Alt"; +// level_name[Level5] = "X"; +// level_name[Level6] = "X Shift"; +// level_name[Level7] = "X Alt Base"; +// level_name[Level8] = "X Shift Alt"; +// }; }; |