| // 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 ] |
| }; |
| }; |