diff options
Diffstat (limited to '.config/xkb')
| -rw-r--r-- | .config/xkb/symbols/custom-us | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/.config/xkb/symbols/custom-us b/.config/xkb/symbols/custom-us new file mode 100644 index 0000000..9faa2e9 --- /dev/null +++ b/.config/xkb/symbols/custom-us @@ -0,0 +1,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 ] }; +}; |
