ctrl revision 21fe479e
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 ] };
11da6c6c0bSmrg};
12da6c6c0bSmrg
13797b363dSmrg// Swap the functions of the CapsLock key and the left Ctrl key.
14797b363dSmrgpartial modifier_keys
15154daed1Smrgxkb_symbols "swapcaps" {
16797b363dSmrg    replace key <CAPS> { [ Control_L ] };
17797b363dSmrg    replace key <LCTL> { [ Caps_Lock ] };
18154daed1Smrg};
19154daed1Smrg
20797b363dSmrg// Move Ctrl to the leftmost key on the middle row and CapsLock to the
21797b363dSmrg// leftmost key on the bottom row.  Only works if the geometry or keycodes
22154daed1Smrg// file has defined appropriate aliases for the keys in question.
23797b363dSmrgpartial modifier_keys
240412cdedSmrgxkb_symbols "ac_ctrl" {
25797b363dSmrg    replace key <AC00> { [ Control_L ] };
26797b363dSmrg    replace key <AA00> { [ Caps_Lock ] };
27154daed1Smrg};
28154daed1Smrg
29797b363dSmrg// Move Ctrl to the leftmost key on the bottom row and CapsLock to the
30797b363dSmrg// leftmost key on the middle row.  Only works if the geometry or keycodes
31154daed1Smrg// file has defined appropriate aliases for the keys in question.
32797b363dSmrgpartial modifier_keys
330412cdedSmrgxkb_symbols "aa_ctrl" {
34797b363dSmrg    replace key <AA00> { [ Control_L ] };
35797b363dSmrg    replace key <AC00> { [ Caps_Lock ] };
36154daed1Smrg};
37154daed1Smrg
38797b363dSmrg// Right Ctrl key functions as another right Alt.
39797b363dSmrgpartial modifier_keys
400412cdedSmrgxkb_symbols "rctrl_ralt" {
41797b363dSmrg    key <RCTL> { symbols[Group1]= [ Alt_R ] };
42154daed1Smrg};
4347fb91feSmrg
44797b363dSmrg// Menu key functions as another right Ctrl.
4547fb91feSmrgpartial modifier_keys
460412cdedSmrgxkb_symbols "menu_rctrl" {
47797b363dSmrg    replace key <MENU> { [ Control_R, Control_R ] };
48797b363dSmrg    modifier_map Control { Control_L, <MENU> };
4947fb91feSmrg};
500412cdedSmrg
51797b363dSmrg// Right Alt key functions as another right Ctrl.
52797b363dSmrgpartial modifier_keys
530412cdedSmrgxkb_symbols "ralt_rctrl" {
54797b363dSmrg    replace key <RALT> { type[Group1] = "TWO_LEVEL",
550412cdedSmrg                         symbols[Group1] = [ Control_R, Control_R ] };
56797b363dSmrg    modifier_map Control { <RALT> };
57797b363dSmrg};
58797b363dSmrg
59797b363dSmrg// Swap the functions of the left Alt key and the left Ctrl key.
60797b363dSmrgpartial modifier_keys
61797b363dSmrgxkb_symbols "swap_lalt_lctl" {
62797b363dSmrg    replace key <LALT> { [ Control_L, Control_L ] };
63797b363dSmrg    replace key <LCTL> { [ Alt_L, Meta_L ] };
64797b363dSmrg};
65797b363dSmrg
66797b363dSmrg// Swap the functions of the left Win key and the left Ctrl key.
67797b363dSmrgpartial modifier_keys
68797b363dSmrgxkb_symbols "swap_lwin_lctl" {
69797b363dSmrg    replace key <LWIN> { [ Control_L ] };
70797b363dSmrg    replace key <LCTL> { [ Super_L ] };
71797b363dSmrg};
72797b363dSmrg
7321fe479eSmrg// Swap the functions of the right Win key and the right Ctrl key.
7421fe479eSmrgpartial modifier_keys
7521fe479eSmrgxkb_symbols "swap_rwin_rctl" {
7621fe479eSmrg    replace key <RWIN> { [ Control_R ] };
7721fe479eSmrg    replace key <RCTL> { [ Super_R ] };
7821fe479eSmrg};
7921fe479eSmrg
80797b363dSmrg// Map Ctrl to the left Alt key, Alt to the left Win key,
81797b363dSmrg// and Super to the left Ctrl key.
82797b363dSmrgpartial modifier_keys
83797b363dSmrgxkb_symbols "swap_lalt_lctl_lwin" {
84797b363dSmrg    replace key <LALT> { [ Control_L, Control_L ] };
85797b363dSmrg    replace key <LWIN> { [ Alt_L, Meta_L ] };
86797b363dSmrg    replace key <LCTL> { [ Super_L ] };
870412cdedSmrg};
88