big-bag-skylark/x-mod_v2-17-1ub1_2016-06-06/xkb/symbols/level5

213 lines
7.0 KiB
Plaintext

// These partial variants assign ISO_Level5_Shift to various XKB keycodes
// so that the fifth shift level can be reached.
// The right Ctrl key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "rctrl_switch" {
key <RCTL> {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
include "level5(modifier_mapping)"
};
// The Less/Greater key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "lsgt_switch" {
key <LSGT> {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
include "level5(modifier_mapping)"
};
// The right Alt key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "ralt_switch" {
key <RALT> {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
include "level5(modifier_mapping)"
};
// Ensure a mapping to a real modifier for LevelFive.
partial modifier_keys
xkb_symbols "modifier_mapping" {
replace key <MDSW> {
type[Group1] = "ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
modifier_map Mod3 { <MDSW> };
};
// 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)
partial modifier_keys
xkb_symbols "lock" {
key.type[Group1] = "ONE_LEVEL";
include "level5(modifier_mapping)"
replace key <HYPR> {
vmods = NumLock,
symbols[Group1] = [ NoSymbol ],
actions[Group1] = [ SetMods(modifiers=NumLock) ]
};
modifier_map Mod2 { <HYPR> };
};
// The following modifier keys are used to switch to the third shift level
// and to set a corresponding lock, implemented as NumLock.
partial modifier_keys
xkb_symbols "lsgt_switch_lock" {
include "level5(lock)"
key <LSGT> {
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 ]
};
};
partial modifier_keys
xkb_symbols "lwin_switch_lock" {
include "level5(lock)"
key <LWIN> {
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 ]
};
};
partial modifier_keys
xkb_symbols "ralt_switch_lock" {
include "level5(lock)"
key <RALT> {
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 ]
};
};
partial modifier_keys
xkb_symbols "rwin_switch_lock" {
include "level5(lock)"
key <RWIN> {
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 ]
};
};
partial modifier_keys
xkb_symbols "lsgt_switch_lock_cancel" {
include "level5(lock)"
key <LSGT> {
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_lock_cancel" {
include "level5(lock)"
key <LWIN> {
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_lock_cancel" {
include "level5(lock)"
key <RALT> {
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_lock_cancel" {
include "level5(lock)"
key <RWIN> {
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 ]
};
};
// --> OEystein Bech "DreymaR" Gadmar, 2011-05: Additions to xkb/symbols/level5
// The CapsLock Level5 switches are good for Extend overlay mappings using Caps as an Extend modifier
// The Left Ctrl Level5 switches are good for Extend overlay mappings if you're using Caps as Left Ctrl
// See "DreymaR's Big Bag of Keyboard Tricks": http://forum.colemak.com/viewtopic.php?pid=9918
// The CapsLock key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "caps_switch" {
key <CAPS> {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
include "level5(modifier_mapping)"
};
// CapsLock chooses 5th level, locks when pressed together with another 5th-level-chooser
partial modifier_keys
xkb_symbols "caps_switch_lock" {
include "level5(lock)"
key <CAPS> {
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 ]
};
};
// CapsLock chooses 5th level, latches (temp lock) when pressed with another 5th-level-chooser
partial modifier_keys
xkb_symbols "caps_switch_lock_cancel" {
include "level5(lock)"
key <CAPS> {
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 ]
};
};
// The Left Ctrl key (while pressed) chooses the fifth shift level.
partial modifier_keys
xkb_symbols "lctl_switch" {
key <LCTL> {
type[Group1]="ONE_LEVEL",
symbols[Group1] = [ ISO_Level5_Shift ]
};
include "level5(modifier_mapping)"
};
// Left Ctrl chooses 5th level, locks when pressed together with another 5th-level-chooser
partial modifier_keys
xkb_symbols "lctl_switch_lock" {
include "level5(lock)"
key <LCTL> {
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 ]
};
};
// Left Ctrl chooses 5th level, latches (temp lock) when pressed with another 5th-level-chooser
partial modifier_keys
xkb_symbols "lctl_switch_lock_cancel" {
include "level5(lock)"
key <LCTL> {
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 ]
};
};
// <-- DreymaR: Additions to xkb/symbols/level5