I finally messed around with modal mappings
I finally messed around with modal mappings
Here's the official documentation on configuring kitty
's modal mappings.
I made this to explore its uses but also because sometimes my fingers trigger the wrong reflex macro and I accidentally change my layout or alter the window size. This guards against that by literally guarding that behavior behind a key combo that puts me into the express context for altering my window/tab layout and arrangement.
To not clutter up your main config, I recommend saving this to its own file and using the include
directive to bring it in.
EDIT: learned that you can map the combo that enters the mode to get out of the mode
kitty-mode-window-tab-arrangement (WTA):
map --new-mode WTA kitty_mod+space>kitty_mod+space map --mode WTA kitty_mod+space>kitty_mod+space pop_keyboard_mode map --mode WTA esc pop_keyboard_mode map --mode WTA ctrl+c pop_keyboard_mode # Windows #navigation map --mode WTA h neighboring_window left map --mode WTA a neighboring_window left map --mode WTA left neighboring_window left map --mode WTA j neighboring_window down map --mode WTA s neighboring_window down map --mode WTA down neighboring_window down map --mode WTA k neighboring_window up map --mode WTA w neighboring_window up map --mode WTA up neighboring_window up map --mode WTA l neighboring_window right map --mode WTA d neighboring_window right map --mode WTA right neighboring_window right map --mode WTA f focus_visible_window #resize map --mode WTA alt+h resize_window narrower map --mode WTA alt+a resize_window narrower map --mode WTA alt+left resize_window narrower map --mode WTA alt+l resize_window wider map --mode WTA alt+d resize_window wider map --mode WTA alt+right resize_window wider map --mode WTA alt+k resize_window taller map --mode WTA alt+w resize_window taller map --mode WTA alt+up resize_window taller map --mode WTA alt+j resize_window shorter map --mode WTA alt+s resize_window shorter map --mode WTA alt+down resize_window shorter map --mode WTA ctrl+home resize_window reset map --mode WTA ctrl+r resize_window reset #arrange map --mode WTA shift+h move_window left map --mode WTA shift+a move_window left map --mode WTA shift+left move_window left map --mode WTA shift+l move_window right map --mode WTA shift+d move_window right map --mode WTA shift+right move_window right map --mode WTA shift+j move_window down map --mode WTA shift+s move_window down map --mode WTA shift+down move_window down map --mode WTA shift+k move_window up map --mode WTA shift+w move_window up map --mode WTA shift+up move_window up map --mode WTA shift+m swap_with_window # have to pop_keyboard_mode here to enable answering question map --mode WTA shift+t combine : detach_window ask : pop_keyboard_mode map --mode WTA shift+n combine : detach_tab ask : pop_keyboard_mode # Tabs map --mode WTA shift+alt+] move_tab_forward map --mode WTA shift+alt+right move_tab_forward map --mode WTA shift+alt+l move_tab_forward map --mode WTA shift+alt+d move_tab_forward map --mode WTA shift+alt+[ move_tab_backward map --mode WTA shift+alt+left move_tab_backward map --mode WTA shift+alt+h move_tab_backward map --mode WTA shift+alt+a move_tab_backward # Close others map --mode WTA ctrl+x>w close_other_windows_in_tab map --mode WTA ctrl+x>t close_other_tabs_in_os_window map --mode WTA ctrl+x>o close_other_os_windows # Layout actions enabled_layouts tall:mirrored=true,fat,splits:split_axis=horizontal,splits:split_axis=vertical,grid,horizontal,vertical,stack,tall,fat:mirrored=true map --mode WTA ctrl+alt+7 goto_layout tall map --mode WTA kitty_mod+alt+7 toggle_layout tall:mirrored=true map --mode WTA ctrl+alt+g goto_layout grid map --mode WTA ctrl+alt+w goto_layout fat map --mode WTA kitty_mod+alt+w toggle_layout fat:mirrored=true map --mode WTA ctrl+alt+v goto_layout vertical map --mode WTA ctrl+alt+h goto_layout horizontal map --mode WTA ctrl+alt+z toggle_layout stack map --mode WTA ctrl+alt+y toggle_layout splits:split_axis=horizontal map --mode WTA kitty_mod+alt+y toggle_layout splits:split_axis=vertical map --mode WTA ctrl+alt+, last_used_layout # control number of main windows action_alias increase_main layout_action increase_num_full_size_windows map --mode WTA ctrl+] increase_main map --mode WTA ctrl+up increase_main map --mode WTA ctrl+right increase_main map --mode WTA ctrl+l increase_main map --mode WTA ctrl+w increase_main map --mode WTA ctrl+d increase_main action_alias decrease_main layout_action decrease_num_full_size_windows map --mode WTA ctrl+[ decrease_main map --mode WTA ctrl+down decrease_main map --mode WTA ctrl+left decrease_main map --mode WTA ctrl+h decrease_main map --mode WTA ctrl+s decrease_main map --mode WTA ctrl+a decrease_main # increase main bias action_alias increase_bias layout_action bias 50 66 75 90 map --mode WTA kitty_mod+] increase_bias map --mode WTA kitty_mod+up increase_bias map --mode WTA kitty_mod+right increase_bias map --mode WTA kitty_mod+l increase_bias map --mode WTA kitty_mod+w increase_bias map --mode WTA kitty_mod+d increase_bias # decrease main bias action_alias decrease_bias layout_action bias 50 33 25 10 map --mode WTA kitty_mod+[ decrease_bias map --mode WTA kitty_mod+down decrease_bias map --mode WTA kitty_mod+left decrease_bias map --mode WTA kitty_mod+h decrease_bias map --mode WTA kitty_mod+s decrease_bias map --mode WTA kitty_mod+a decrease_bias