From 661b363fc7ac02c1c9a807596647a003d15eb7fb Mon Sep 17 00:00:00 2001 From: srdusr Date: Wed, 20 Sep 2023 23:43:58 +0200 Subject: Ctrl+mode_switch+hjkl for home/pagedown/pageup/end --- .config/xkb/symbols/vim_keys | 26 ++++++++++++++++++++++++-- 1 file changed, 24 insertions(+), 2 deletions(-) (limited to '.config/xkb') diff --git a/.config/xkb/symbols/vim_keys b/.config/xkb/symbols/vim_keys index f64c41f..34f2ca5 100644 --- a/.config/xkb/symbols/vim_keys +++ b/.config/xkb/symbols/vim_keys @@ -1,10 +1,12 @@ // ~/.config/xkb/symbols/vim_keys -// Clear existing modifiers -default partial modifier_keys xkb_symbols "basic" { + include "us(basic)" + include "custom(altgr)" + clear lock; clear mod5; + clear control; // Define a custom modifier (Mode_switch) modifier_map Mod5 { }; @@ -22,6 +24,26 @@ xkb_symbols "basic" { key { [ Up ] }; key { [ Right ] }; + // Assign keys to the CtrlMod modifier + key { [ Control_R, Control_R ] }; + key { [ Control_L, Control_L ] }; + + // Define Ctrl+Mode_switch+J as PageDown + key { [ Control_R, ISO_Level3_Shift, Prior ] }; + key { [ Control_L, ISO_Level3_Shift, Prior ] }; + + // Define Ctrl+Mode_switch+K as PageUp + key { [ Control_R, ISO_Level3_Shift, Next ] }; + key { [ Control_L, ISO_Level3_Shift, Next ] }; + + // Define Ctrl+Mode_switch+H as Home + key { [ Control_R, ISO_Level3_Shift, Home ] }; + key { [ Control_L, ISO_Level3_Shift, Home ] }; + + // Define Ctrl+Mode_switch+L as End + key { [ Control_R, ISO_Level3_Shift, End ] }; + key { [ Control_L, ISO_Level3_Shift, End ] }; + // Make 'q' act as Escape when in Mode_switch key { [ q, Q, Escape ] }; -- cgit v1.2.3