ctrl revision 1.1.1.14 1 1.1.1.10 mrg // Eliminate CapsLock, making it another Ctrl.
2 1.1.1.10 mrg partial modifier_keys
3 1.1 mrg xkb_symbols "nocaps" {
4 1.1.1.10 mrg replace key <CAPS> { [ Control_L, Control_L ] };
5 1.1 mrg modifier_map Control { <CAPS>, <LCTL> };
6 1.1 mrg };
7 1.1 mrg
8 1.1.1.10 mrg // Make the left Ctrl key a left Meta.
9 1.1.1.7 mrg xkb_symbols "lctrl_meta" {
10 1.1.1.10 mrg replace key <LCTL> { [ Meta_L ] };
11 1.1.1.13 mrg modifier_map Mod4 { <LCTL> };
12 1.1.1.7 mrg };
13 1.1.1.7 mrg
14 1.1.1.10 mrg // Swap the functions of the CapsLock key and the left Ctrl key.
15 1.1.1.10 mrg partial modifier_keys
16 1.1 mrg xkb_symbols "swapcaps" {
17 1.1.1.10 mrg replace key <CAPS> { [ Control_L ] };
18 1.1.1.10 mrg replace key <LCTL> { [ Caps_Lock ] };
19 1.1.1.13 mrg modifier_map Control { <CAPS> };
20 1.1.1.13 mrg modifier_map Lock { <LCTL> };
21 1.1 mrg };
22 1.1 mrg
23 1.1.1.14 mrg // Swap the functions of the CapsLock key and the left Ctrl key,
24 1.1.1.14 mrg // but make the Ctrl key a 'Hyper' modifier
25 1.1.1.14 mrg partial modifier_keys
26 1.1.1.14 mrg xkb_symbols "swapcaps_hyper" {
27 1.1.1.14 mrg replace key <CAPS> { [ Control_L ] };
28 1.1.1.14 mrg replace key <LCTL> { [ Hyper_L ] };
29 1.1.1.14 mrg modifier_map Control { <CAPS> };
30 1.1.1.14 mrg modifier_map Mod3 { <LCTL> };
31 1.1.1.14 mrg };
32 1.1.1.14 mrg
33 1.1.1.14 mrg // Set CapsLock to left Ctrl and left Ctrl to switch layout.
34 1.1.1.14 mrg partial modifier_keys
35 1.1.1.14 mrg xkb_symbols "swapcaps_and_switch_layout" {
36 1.1.1.14 mrg replace key <CAPS> { [ Control_L ] };
37 1.1.1.14 mrg replace key <LCTL> { [ ISO_Next_Group ] };
38 1.1.1.14 mrg modifier_map Control { <CAPS> };
39 1.1.1.14 mrg modifier_map Lock { <LCTL> };
40 1.1.1.14 mrg };
41 1.1.1.14 mrg
42 1.1.1.10 mrg // Move Ctrl to the leftmost key on the middle row and CapsLock to the
43 1.1.1.10 mrg // leftmost key on the bottom row. Only works if the geometry or keycodes
44 1.1 mrg // file has defined appropriate aliases for the keys in question.
45 1.1.1.10 mrg partial modifier_keys
46 1.1.1.9 mrg xkb_symbols "ac_ctrl" {
47 1.1.1.10 mrg replace key <AC00> { [ Control_L ] };
48 1.1.1.10 mrg replace key <AA00> { [ Caps_Lock ] };
49 1.1.1.13 mrg modifier_map Control { <AC00> };
50 1.1.1.13 mrg modifier_map Lock { <AA00> };
51 1.1 mrg };
52 1.1 mrg
53 1.1.1.10 mrg // Move Ctrl to the leftmost key on the bottom row and CapsLock to the
54 1.1.1.10 mrg // leftmost key on the middle row. Only works if the geometry or keycodes
55 1.1 mrg // file has defined appropriate aliases for the keys in question.
56 1.1.1.10 mrg partial modifier_keys
57 1.1.1.9 mrg xkb_symbols "aa_ctrl" {
58 1.1.1.10 mrg replace key <AA00> { [ Control_L ] };
59 1.1.1.10 mrg replace key <AC00> { [ Caps_Lock ] };
60 1.1.1.13 mrg modifier_map Control { <AA00> };
61 1.1.1.13 mrg modifier_map Lock { <AC00> };
62 1.1 mrg };
63 1.1 mrg
64 1.1.1.12 mrg // Right Ctrl functions as another right Alt.
65 1.1.1.10 mrg partial modifier_keys
66 1.1.1.9 mrg xkb_symbols "rctrl_ralt" {
67 1.1.1.10 mrg key <RCTL> { symbols[Group1]= [ Alt_R ] };
68 1.1.1.13 mrg modifier_map Mod1{ <RCTL> };
69 1.1 mrg };
70 1.1.1.6 mrg
71 1.1.1.10 mrg // Menu key functions as another right Ctrl.
72 1.1.1.6 mrg partial modifier_keys
73 1.1.1.9 mrg xkb_symbols "menu_rctrl" {
74 1.1.1.10 mrg replace key <MENU> { [ Control_R, Control_R ] };
75 1.1.1.10 mrg modifier_map Control { Control_L, <MENU> };
76 1.1.1.6 mrg };
77 1.1.1.9 mrg
78 1.1.1.10 mrg // Right Alt key functions as another right Ctrl.
79 1.1.1.10 mrg partial modifier_keys
80 1.1.1.9 mrg xkb_symbols "ralt_rctrl" {
81 1.1.1.10 mrg replace key <RALT> { type[Group1] = "TWO_LEVEL",
82 1.1.1.9 mrg symbols[Group1] = [ Control_R, Control_R ] };
83 1.1.1.10 mrg modifier_map Control { <RALT> };
84 1.1.1.10 mrg };
85 1.1.1.10 mrg
86 1.1.1.10 mrg // Swap the functions of the left Alt key and the left Ctrl key.
87 1.1.1.10 mrg partial modifier_keys
88 1.1.1.10 mrg xkb_symbols "swap_lalt_lctl" {
89 1.1.1.10 mrg replace key <LALT> { [ Control_L, Control_L ] };
90 1.1.1.10 mrg replace key <LCTL> { [ Alt_L, Meta_L ] };
91 1.1.1.13 mrg modifier_map Mod1 { <LCTL> };
92 1.1.1.13 mrg modifier_map Control { <LALT> };
93 1.1.1.10 mrg };
94 1.1.1.10 mrg
95 1.1.1.10 mrg // Swap the functions of the left Win key and the left Ctrl key.
96 1.1.1.10 mrg partial modifier_keys
97 1.1.1.10 mrg xkb_symbols "swap_lwin_lctl" {
98 1.1.1.10 mrg replace key <LWIN> { [ Control_L ] };
99 1.1.1.10 mrg replace key <LCTL> { [ Super_L ] };
100 1.1.1.13 mrg modifier_map Mod4 { <LCTL> };
101 1.1.1.13 mrg modifier_map Control { <LWIN> };
102 1.1.1.10 mrg };
103 1.1.1.10 mrg
104 1.1.1.11 mrg // Swap the functions of the right Win key and the right Ctrl key.
105 1.1.1.11 mrg partial modifier_keys
106 1.1.1.11 mrg xkb_symbols "swap_rwin_rctl" {
107 1.1.1.11 mrg replace key <RWIN> { [ Control_R ] };
108 1.1.1.11 mrg replace key <RCTL> { [ Super_R ] };
109 1.1.1.13 mrg modifier_map Mod4 { <RCTL> };
110 1.1.1.13 mrg modifier_map Control { <RWIN> };
111 1.1.1.11 mrg };
112 1.1.1.11 mrg
113 1.1.1.10 mrg // Map Ctrl to the left Alt key, Alt to the left Win key,
114 1.1.1.10 mrg // and Super to the left Ctrl key.
115 1.1.1.10 mrg partial modifier_keys
116 1.1.1.10 mrg xkb_symbols "swap_lalt_lctl_lwin" {
117 1.1.1.10 mrg replace key <LALT> { [ Control_L, Control_L ] };
118 1.1.1.10 mrg replace key <LWIN> { [ Alt_L, Meta_L ] };
119 1.1.1.10 mrg replace key <LCTL> { [ Super_L ] };
120 1.1.1.13 mrg modifier_map Mod1 { <LWIN> };
121 1.1.1.13 mrg modifier_map Mod4 { <LCTL> };
122 1.1.1.13 mrg modifier_map Control { <LALT> };
123 1.1.1.9 mrg };
124