ctrl revision 2ab00627
1797b363dSmrg// Eliminate CapsLock, making it another Ctrl.
2797b363dSmrgpartial modifier_keys
3154daed1Smrgxkb_symbols "nocaps" {
4797b363dSmrg    replace key <CAPS> { [ Control_L, Control_L ] };
5154daed1Smrg    modifier_map  Control { <CAPS>, <LCTL> };
6154daed1Smrg};
7154daed1Smrg
8797b363dSmrg// Make the left Ctrl key a left Meta.
9da6c6c0bSmrgxkb_symbols "lctrl_meta" {
10797b363dSmrg    replace key <LCTL> { [ Meta_L ] };
112ab00627Smrg    modifier_map  Mod4 { <LCTL> };
12da6c6c0bSmrg};
13da6c6c0bSmrg
14797b363dSmrg// Swap the functions of the CapsLock key and the left Ctrl key.
15797b363dSmrgpartial modifier_keys
16154daed1Smrgxkb_symbols "swapcaps" {
17797b363dSmrg    replace key <CAPS> { [ Control_L ] };
18797b363dSmrg    replace key <LCTL> { [ Caps_Lock ] };
192ab00627Smrg    modifier_map Control { <CAPS> };
202ab00627Smrg    modifier_map  Lock { <LCTL> };
21154daed1Smrg};
22154daed1Smrg
23797b363dSmrg// Move Ctrl to the leftmost key on the middle row and CapsLock to the
24797b363dSmrg// leftmost key on the bottom row.  Only works if the geometry or keycodes
25154daed1Smrg// file has defined appropriate aliases for the keys in question.
26797b363dSmrgpartial modifier_keys
270412cdedSmrgxkb_symbols "ac_ctrl" {
28797b363dSmrg    replace key <AC00> { [ Control_L ] };
29797b363dSmrg    replace key <AA00> { [ Caps_Lock ] };
302ab00627Smrg    modifier_map  Control { <AC00> };
312ab00627Smrg    modifier_map  Lock    { <AA00> };
32154daed1Smrg};
33154daed1Smrg
34797b363dSmrg// Move Ctrl to the leftmost key on the bottom row and CapsLock to the
35797b363dSmrg// leftmost key on the middle row.  Only works if the geometry or keycodes
36154daed1Smrg// file has defined appropriate aliases for the keys in question.
37797b363dSmrgpartial modifier_keys
380412cdedSmrgxkb_symbols "aa_ctrl" {
39797b363dSmrg    replace key <AA00> { [ Control_L ] };
40797b363dSmrg    replace key <AC00> { [ Caps_Lock ] };
412ab00627Smrg    modifier_map  Control { <AA00> };
422ab00627Smrg    modifier_map  Lock    { <AC00> };
43154daed1Smrg};
44154daed1Smrg
459184b9c8Smrg// Right Ctrl functions as another right Alt.
46797b363dSmrgpartial modifier_keys
470412cdedSmrgxkb_symbols "rctrl_ralt" {
48797b363dSmrg    key <RCTL> { symbols[Group1]= [ Alt_R ] };
492ab00627Smrg    modifier_map Mod1{ <RCTL> };
50154daed1Smrg};
5147fb91feSmrg
52797b363dSmrg// Menu key functions as another right Ctrl.
5347fb91feSmrgpartial modifier_keys
540412cdedSmrgxkb_symbols "menu_rctrl" {
55797b363dSmrg    replace key <MENU> { [ Control_R, Control_R ] };
56797b363dSmrg    modifier_map Control { Control_L, <MENU> };
5747fb91feSmrg};
580412cdedSmrg
59797b363dSmrg// Right Alt key functions as another right Ctrl.
60797b363dSmrgpartial modifier_keys
610412cdedSmrgxkb_symbols "ralt_rctrl" {
62797b363dSmrg    replace key <RALT> { type[Group1] = "TWO_LEVEL",
630412cdedSmrg                         symbols[Group1] = [ Control_R, Control_R ] };
64797b363dSmrg    modifier_map Control { <RALT> };
65797b363dSmrg};
66797b363dSmrg
67797b363dSmrg// Swap the functions of the left Alt key and the left Ctrl key.
68797b363dSmrgpartial modifier_keys
69797b363dSmrgxkb_symbols "swap_lalt_lctl" {
70797b363dSmrg    replace key <LALT> { [ Control_L, Control_L ] };
71797b363dSmrg    replace key <LCTL> { [ Alt_L, Meta_L ] };
722ab00627Smrg    modifier_map Mod1    { <LCTL> };
732ab00627Smrg    modifier_map Control { <LALT> };
74797b363dSmrg};
75797b363dSmrg
76797b363dSmrg// Swap the functions of the left Win key and the left Ctrl key.
77797b363dSmrgpartial modifier_keys
78797b363dSmrgxkb_symbols "swap_lwin_lctl" {
79797b363dSmrg    replace key <LWIN> { [ Control_L ] };
80797b363dSmrg    replace key <LCTL> { [ Super_L ] };
812ab00627Smrg    modifier_map Mod4    { <LCTL> };
822ab00627Smrg    modifier_map Control { <LWIN> };
83797b363dSmrg};
84797b363dSmrg
8521fe479eSmrg// Swap the functions of the right Win key and the right Ctrl key.
8621fe479eSmrgpartial modifier_keys
8721fe479eSmrgxkb_symbols "swap_rwin_rctl" {
8821fe479eSmrg    replace key <RWIN> { [ Control_R ] };
8921fe479eSmrg    replace key <RCTL> { [ Super_R ] };
902ab00627Smrg    modifier_map Mod4    { <RCTL> };
912ab00627Smrg    modifier_map Control { <RWIN> };
9221fe479eSmrg};
9321fe479eSmrg
94797b363dSmrg// Map Ctrl to the left Alt key, Alt to the left Win key,
95797b363dSmrg// and Super to the left Ctrl key.
96797b363dSmrgpartial modifier_keys
97797b363dSmrgxkb_symbols "swap_lalt_lctl_lwin" {
98797b363dSmrg    replace key <LALT> { [ Control_L, Control_L ] };
99797b363dSmrg    replace key <LWIN> { [ Alt_L, Meta_L ] };
100797b363dSmrg    replace key <LCTL> { [ Super_L ] };
1012ab00627Smrg    modifier_map Mod1    { <LWIN> };
1022ab00627Smrg    modifier_map Mod4    { <LCTL> };
1032ab00627Smrg    modifier_map Control { <LALT> };
1040412cdedSmrg};
105