aboutsummaryrefslogtreecommitdiff
path: root/.config/xkb/symbols/custom-us
blob: 9faa2e97917d38d313524890f2f25366847e29bb (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
// Clear existing modifiers
//default partial modifier_keys
partial alphanumeric_keys
xkb_symbols "basic" {
    include "us(basic)"

    // Define a custom modifier (Mode_switch)
    modifier_map Mod5 { <MDSW> };

    // Remap Caps Lock to AltGr (ISO_Level3_Shift) and clear other modifiers
    key <CAPS> {
        type[Group1] = "ONE_LEVEL",
        symbols[Group1] = [ ISO_Level3_Shift ],
        actions[Group1] = [ SetMods(modifiers=Mod5) ]
    };

    // Remap h, j, k, l to arrow keys when Mode_switch is active and clear other modifiers
    key <AC06> { [ h, H, Left ] };
    key <AC07> { [ j, J, Down ] };
    key <AC08> { [ k, K, Up ] };
    key <AC09> { [ l, L, Right ] };

    key <AD02> { [ w, W, Up ] };
    key <AC01> { [ a, A, Left ] };
    key <AC02> { [ s, S, Down ] };
    key <AC03> { [ d, D, Right ] };
};