level5 revision c067fea9
1// $XKeyboardConfig$ 2 3// these variants assign various XKB keycodes to ISO_Level5_Shift so that 4// the third shift level can be reached 5// 6// $XFree86: xc/programs/xkbcomp/symbols/level3,v 1.7 2003/09/08 14:25:32 eich Exp $ 7// 8 9// using the level(switch) map, the right Control key temporarily 10// chooses the fifth shift level (until it is released). 11partial modifier_keys 12xkb_symbols "rctrl_switch" { 13 key <RCTL> { 14 type[Group1]="ONE_LEVEL", 15 symbols[Group1] = [ ISO_Level5_Shift ] 16 }; 17 modifier_map Mod3 { ISO_Level5_Shift }; 18}; 19 20partial modifier_keys 21xkb_symbols "lsgt_switch" { 22 key <LSGT> { 23 type[Group1]="ONE_LEVEL", 24 symbols[Group1] = [ ISO_Level5_Shift ] 25 }; 26 modifier_map Mod3 { ISO_Level5_Shift }; 27}; 28 29partial modifier_keys 30xkb_symbols "ralt_switch" { 31 key <RALT> { 32 type[Group1]="ONE_LEVEL", 33 symbols[Group1] = [ ISO_Level5_Shift ] 34 }; 35 modifier_map Mod3 { ISO_Level5_Shift }; 36}; 37 38 39// The following modifier keys are used to switch to the third shift and to set a 40// corresponding lock, implemented as NumLock. 41 42partial modifier_keys 43xkb_symbols "lock" { 44 // This adds the definitions needed to create a level5-lock behaviour, using 45 // the real modifier NumLock as a lock indicator. 46 // See also: types/level5 : EIGHT_LEVEL_LEVEL_FIVE_LOCK 47 // See also: compat/level5(level5_lock) 48 key.type[Group1] = "ONE_LEVEL"; 49 50 replace key <MDSW> { 51 vmods = LevelFive, 52 symbols[Group1] = [ ISO_Level5_Shift ], 53 actions[Group1] = [ SetMods(modifiers=LevelFive) ] 54 }; 55 modifier_map Mod3 { <MDSW> }; 56 57 replace key <HYPR> { 58 vmods = NumLock, 59 symbols[Group1] = [ NoSymbol ], 60 actions[Group1] = [ SetMods(modifiers=NumLock) ] 61 }; 62 modifier_map Mod2 { <HYPR> }; 63}; 64 65partial modifier_keys 66xkb_symbols "lsgt_switch_lock" { 67 68 include "level5(lock)" 69 70 key <LSGT> { 71 type[Group1] = "EIGHT_LEVEL", 72 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 ] 73 }; 74}; 75 76partial modifier_keys 77xkb_symbols "lwin_switch_lock" { 78 79 include "level5(lock)" 80 81 key <LWIN> { 82 type[Group1] = "EIGHT_LEVEL", 83 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 ] 84 }; 85}; 86 87partial modifier_keys 88xkb_symbols "ralt_switch_lock" { 89 90 include "level5(lock)" 91 92 key <RALT> { 93 type[Group1] = "EIGHT_LEVEL", 94 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 ] 95 }; 96}; 97 98partial modifier_keys 99xkb_symbols "rwin_switch_lock" { 100 101 include "level5(lock)" 102 103 key <RWIN> { 104 type[Group1] = "EIGHT_LEVEL", 105 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 ] 106 }; 107}; 108 109partial modifier_keys 110xkb_symbols "lsgt_switch_lock_cancel" { 111 112 include "level5(lock)" 113 114 key <LSGT> { 115 type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 116 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 ] 117 }; 118}; 119 120partial modifier_keys 121xkb_symbols "lwin_switch_lock_cancel" { 122 123 include "level5(lock)" 124 125 key <LWIN> { 126 type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 127 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 ] 128 }; 129}; 130 131partial modifier_keys 132xkb_symbols "ralt_switch_lock_cancel" { 133 134 include "level5(lock)" 135 136 key <RALT> { 137 type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 138 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 ] 139 }; 140}; 141 142partial modifier_keys 143xkb_symbols "rwin_switch_lock_cancel" { 144 145 include "level5(lock)" 146 147 key <RWIN> { 148 type[Group1] = "EIGHT_LEVEL_LEVEL_FIVE_LOCK", 149 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 ] 150 }; 151}; 152