summaryrefslogtreecommitdiff
path: root/symbols/capslock
blob: 11d279a397c2aa948c235fab6fbf50218ead6330 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
default  hidden partial modifier_keys
xkb_symbols "capslock" {
    replace key <CAPS> { [ Caps_Lock ], type[group1] = "ONE_LEVEL" };
    modifier_map Lock { Caps_Lock };
};

hidden partial modifier_keys
xkb_symbols "shiftlock" {
    replace key <CAPS> { [ Shift_Lock ], type[group1] = "ONE_LEVEL" };
    modifier_map Shift { Shift_Lock };
};

hidden partial modifier_keys
xkb_symbols "swapescape" {
    key <CAPS> { [ Escape ], type[group1] = "ONE_LEVEL" };
    key <ESC>  { [ Caps_Lock ] };
};

hidden partial modifier_keys
xkb_symbols "escape" {
    key <CAPS> { [ Escape ], type[group1] = "ONE_LEVEL" };
};

hidden partial modifier_keys
xkb_symbols "escape_shifted_capslock" {
    key <CAPS> {
        type[Group1] = "TWO_LEVEL",
        symbols[Group1] = [ Escape, Caps_Lock ],
        actions[Group1] = [ NoAction(), LockMods(modifiers = Lock) ]
    };
};

hidden partial modifier_keys
xkb_symbols "escape_shifted_compose" {
    key <CAPS> {
        type[Group1] = "TWO_LEVEL",
        symbols[Group1] = [ Escape, Multi_key ],
        actions[Group1] = [ NoAction(), NoAction() ]
    };
};

hidden partial modifier_keys
xkb_symbols "backspace" {
    key <CAPS> { [ BackSpace ], type[group1] = "ONE_LEVEL" };
};

hidden partial modifier_keys
xkb_symbols "super" {
    key <CAPS> { [ Super_L ], type[group1] = "ONE_LEVEL" };
    modifier_map Mod4 { <CAPS> };
};

hidden partial modifier_keys
xkb_symbols "hyper" {
    key <CAPS> { [ Hyper_L ], type[group1] = "ONE_LEVEL" };
    modifier_map Mod4 { <CAPS> };
};

hidden partial modifier_keys
xkb_symbols "menu" {
    key <CAPS> { [ Menu ], type[group1] = "ONE_LEVEL" };
};

hidden partial modifier_keys
xkb_symbols "numlock" {
    key <CAPS> { [ Num_Lock ], type[group1] = "ONE_LEVEL" };
};

// This changes the <CAPS> key to become a Control modifier,
// but it will still produce the Caps_Lock keysym; this is
// useful for apps that need to distinguish it from usual
// Control_L and Control_R.
hidden partial modifier_keys
xkb_symbols "ctrl_modifier" {
    replace key <CAPS> {
        type[Group1] = "ONE_LEVEL",
        symbols[Group1] = [ Caps_Lock ],
        actions[Group1] = [ SetMods(modifiers=Control) ]
    };
    modifier_map Control { <CAPS> };
};

hidden partial modifier_keys
xkb_symbols "none" {
    key <CAPS> { [ VoidSymbol ], type[group1] = "ONE_LEVEL" };
};