level3 revision 154daed1
1154daed1Smrg// $XKeyboardConfig: xkeyboard-config/symbols/level3,v 1.18 2007-09-26 11:43:49 svu Exp $ 2154daed1Smrg 3154daed1Smrg// these variants assign various XKB keycodes to ISO_Level3_Shift so that 4154daed1Smrg// the third shift level can be reached 5154daed1Smrg// 6154daed1Smrg// $XFree86: xc/programs/xkbcomp/symbols/level3,v 1.7 2003/09/08 14:25:32 eich Exp $ 7154daed1Smrg// 8154daed1Smrg 9154daed1Smrg// the default behavior is for the right Alt key (AltGr) to generate the 10154daed1Smrg// third engraved symbol 11154daed1Smrgdefault partial modifier_keys 12154daed1Smrgxkb_symbols "ralt_switch" { 13154daed1Smrg key <RALT> { 14154daed1Smrg type[Group1]="ONE_LEVEL", 15154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 16154daed1Smrg }; 17154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 18154daed1Smrg}; 19154daed1Smrg 20154daed1Smrg// Right Alt key never chooses 3rd level. 21154daed1Smrg// This option attempts to undo the effect of a layout's 22154daed1Smrg// including ralt_switch. You may also want to select another 23154daed1Smrg// level3 option that maps the level3 shift to some other key. 24154daed1Smrgpartial modifier_keys 25154daed1Smrgxkb_symbols "ralt_alt" { 26154daed1Smrg key <RALT> { 27154daed1Smrg type[Group1]="TWO_LEVEL", 28154daed1Smrg type[Group2]="TWO_LEVEL", 29154daed1Smrg type[Group3]="TWO_LEVEL", 30154daed1Smrg type[Group4]="TWO_LEVEL", 31154daed1Smrg symbols[Group1] = [ Alt_R, Meta_R ], 32154daed1Smrg symbols[Group2] = [ Alt_R, Meta_R ], 33154daed1Smrg symbols[Group3] = [ Alt_R, Meta_R ], 34154daed1Smrg symbols[Group4] = [ Alt_R, Meta_R ] 35154daed1Smrg }; 36154daed1Smrg modifier_map Mod1 { <RALT> }; 37154daed1Smrg}; 38154daed1Smrg 39154daed1Smrgpartial modifier_keys 40154daed1Smrgxkb_symbols "ralt_switch_multikey" { 41154daed1Smrg key <RALT> { 42154daed1Smrg type[Group1]="TWO_LEVEL", 43154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift, Multi_key ] 44154daed1Smrg }; 45154daed1Smrg}; 46154daed1Smrg 47154daed1Smrg// special case or right Alt switch - for use with grp:alts_toggle 48154daed1Smrg// 49154daed1Smrgpartial hidden modifier_keys 50154daed1Smrgxkb_symbols "ralt_switch_for_alts_toggle" { 51154daed1Smrg virtual_modifiers LAlt, AlGr; 52154daed1Smrg key <LALT> { 53154daed1Smrg type[Group1]="PC_RALT_LEVEL2", 54154daed1Smrg symbols[Group1] = [ Alt_L, ISO_Prev_Group, ISO_Prev_Group ], 55154daed1Smrg virtualMods= LAlt 56154daed1Smrg }; 57154daed1Smrg key <RALT> { 58154daed1Smrg type[Group1]="PC_ALT_LEVEL2", 59154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift, ISO_Next_Group ], 60154daed1Smrg virtualMods= AltGr 61154daed1Smrg }; 62154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 63154daed1Smrg}; 64154daed1Smrg 65154daed1Smrg// using the level(alt_switch) map, either Alt key temporarily chooses 66154daed1Smrg// the third shift level. (Mostly be used to imitate Mac OS functionality.) 67154daed1Smrgpartial modifier_keys 68154daed1Smrgxkb_symbols "alt_switch" { 69154daed1Smrg include "level3(lalt_switch)" 70154daed1Smrg include "level3(ralt_switch)" 71154daed1Smrg}; 72154daed1Smrg 73154daed1Smrgpartial modifier_keys 74154daed1Smrgxkb_symbols "lalt_switch" { 75154daed1Smrg key <LALT> { 76154daed1Smrg type[Group1]="ONE_LEVEL", 77154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 78154daed1Smrg }; 79154daed1Smrg modifier_map Mod5 { <LALT> }; 80154daed1Smrg}; 81154daed1Smrg 82154daed1Smrg// using the level(switch) map, the right Control key temporarily 83154daed1Smrg// chooses the third shift level (until it is released). 84154daed1Smrgpartial modifier_keys 85154daed1Smrgxkb_symbols "switch" { 86154daed1Smrg key <RCTL> { 87154daed1Smrg type[Group1]="ONE_LEVEL", 88154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 89154daed1Smrg }; 90154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 91154daed1Smrg}; 92154daed1Smrg 93154daed1Smrg// using the level(menu_switch) map, the Menu key temporarily 94154daed1Smrg// chooses the third shift level (until it is released). 95154daed1Smrgpartial modifier_keys 96154daed1Smrgxkb_symbols "menu_switch" { 97154daed1Smrg key <MENU> { 98154daed1Smrg type[Group1]="ONE_LEVEL", 99154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 100154daed1Smrg }; 101154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 102154daed1Smrg}; 103154daed1Smrg 104154daed1Smrg// using the level3(win_switch) map, the either Windows' logo key 105154daed1Smrg// temporarily chooses the third shift level. 106154daed1Smrgpartial modifier_keys 107154daed1Smrgxkb_symbols "win_switch" { 108154daed1Smrg include "level3(lwin_switch)" 109154daed1Smrg include "level3(rwin_switch)" 110154daed1Smrg}; 111154daed1Smrg 112154daed1Smrg// using the level3(lwin_switch) map, the left Windows' logo key 113154daed1Smrg// temporarily chooses the third shift level. 114154daed1Smrgpartial modifier_keys 115154daed1Smrgxkb_symbols "lwin_switch" { 116154daed1Smrg key <LWIN> { 117154daed1Smrg type[Group1]="ONE_LEVEL", 118154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 119154daed1Smrg }; 120154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 121154daed1Smrg}; 122154daed1Smrg 123154daed1Smrg// using the level(rwin_switch) map, the right Windows' logo key 124154daed1Smrg// temporarily chooses the third shift level. If you use this map, 125154daed1Smrg// you should define your keyboard as pc101 or pc102 instead of pc104 126154daed1Smrg// or pc105. 127154daed1Smrgpartial modifier_keys 128154daed1Smrgxkb_symbols "rwin_switch" { 129154daed1Smrg key <RWIN> { 130154daed1Smrg type[Group1]="ONE_LEVEL", 131154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 132154daed1Smrg }; 133154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 134154daed1Smrg}; 135154daed1Smrg 136154daed1Smrg// using the level3(enter_switch) map, the Enter key on the keypad 137154daed1Smrg// temporarily chooses the third shift level. This is especially 138154daed1Smrg// useful for Mac laptops which miss the right Alt key. 139154daed1Smrgpartial hidden modifier_keys 140154daed1Smrgxkb_symbols "enter_switch" { 141154daed1Smrg key <KPEN> { 142154daed1Smrg type[Group1]="ONE_LEVEL", 143154daed1Smrg symbols[Group1] = [ ISO_Level3_Shift ] 144154daed1Smrg }; 145154daed1Smrg modifier_map Mod5 { ISO_Level3_Shift }; 146154daed1Smrg}; 147