3 // these variants assign various XKB keycodes to ISO_Level3_Shift so that
4 // the third shift level can be reached
6 // $XFree86: xc/programs/xkbcomp/symbols/level3,v 1.7 2003/09/08 14:25:32 eich Exp $
9 // the default behavior is for the right Alt key (AltGr) to generate the
10 // third engraved symbol
11 default partial modifier_keys
12 xkb_symbols "ralt_switch" {
14 type[Group1]="ONE_LEVEL",
15 symbols[Group1] = [ ISO_Level3_Shift ]
17 modifier_map Mod5 { ISO_Level3_Shift };
21 xkb_symbols "ralt_switch_multikey" {
23 type[Group1]="TWO_LEVEL",
24 symbols[Group1] = [ ISO_Level3_Shift, Multi_key ]
28 // special case or right Alt switch - for use with grp:alts_toggle
30 partial hidden modifier_keys
31 xkb_symbols "ralt_switch_for_alts_toggle" {
33 type[Group1]="PC_SYSRQ",
34 symbols[Group1] = [ Alt_L, ISO_Prev_Group, ISO_Prev_Group ]
37 type[Group1]="PC_ALT_LEVEL2",
38 symbols[Group1] = [ ISO_Level3_Shift, ISO_Next_Group ],
41 modifier_map Mod5 { ISO_Level3_Shift };
44 // using the level(alt_switch) map, either Alt key temporarily chooses
45 // the third shift level. (Mostly be used to imitate Mac OS functionality.)
47 xkb_symbols "alt_switch" {
48 include "level3(lalt_switch)"
49 include "level3(ralt_switch)"
53 xkb_symbols "lalt_switch" {
55 type[Group1]="ONE_LEVEL",
56 symbols[Group1] = [ ISO_Level3_Shift ]
58 modifier_map Mod5 { ISO_Level3_Shift };
61 // using the level(switch) map, the right Control key temporarily
62 // chooses the third shift level (until it is released).
64 xkb_symbols "switch" {
66 type[Group1]="ONE_LEVEL",
67 symbols[Group1] = [ ISO_Level3_Shift ]
69 modifier_map Mod5 { ISO_Level3_Shift };
72 // using the level(menu_switch) map, the Menu key temporarily
73 // chooses the third shift level (until it is released).
75 xkb_symbols "menu_switch" {
77 type[Group1]="ONE_LEVEL",
78 symbols[Group1] = [ ISO_Level3_Shift ]
80 modifier_map Mod5 { ISO_Level3_Shift };
83 // using the level(win_switch) map, the either Windows' logo key
84 // temporarily chooses the third shift level. If you use this map,
85 // you should define your keyboard as pc101 or pc102 instead of pc104
88 xkb_symbols "win_switch" {
89 include "level3(lwin_switch)"
90 include "level3(rwin_switch)"
93 // using the level(lwin_switch) map, the left Windows' logo key
94 // temporarily chooses the third shift level. If you use this map,
95 // you should define your keyboard as pc101 or pc102 instead of pc104
98 xkb_symbols "lwin_switch" {
100 type[Group1]="ONE_LEVEL",
101 symbols[Group1] = [ ISO_Level3_Shift ]
103 modifier_map Mod5 { ISO_Level3_Shift };
106 // using the level(rwin_switch) map, the right Windows' logo key
107 // temporarily chooses the third shift level. If you use this map,
108 // you should define your keyboard as pc101 or pc102 instead of pc104
110 partial modifier_keys
111 xkb_symbols "rwin_switch" {
113 type[Group1]="ONE_LEVEL",
114 symbols[Group1] = [ ISO_Level3_Shift ]
116 modifier_map Mod5 { ISO_Level3_Shift };