Files
dotfiles/dot_config/kitty/kitty.conf
T

103 lines
3.0 KiB
Plaintext

# ── base.conf · shared ──
font_size 13.5
font_family VictorMono Nerd Font
bold_italic_font auto
window_padding_width 8
hide_window_decorations yes
background_opacity 0.9
cursor_blink_interval 1
copy_on_select auto
strip_trailing_spaces smart
confirm_os_window_close 0
allow_remote_control socket-only
# socket-only remote control needs a socket: this also exports KITTY_LISTEN_ON
# into every pane, which is how nvim (config.pane_nav) knows kitty owns the
# panes and how it hands an at-edge <C-h/j/k/l> back to kitty.
listen_on unix:@kitty-{kitty_pid}
cursor_trail 10
cursor_trail_start_threshold 0
cursor_trail_decay 0.01 0.05
cursor_blink_interval 0
enabled_layouts splits:split_axis=vertical,stack
# launch aliases
action_alias launch_mn launch --cwd=current --type=overlay-main
action_alias launch_os launch --cwd=current --type=os-window
action_alias launch_ov launch --cwd=current --type=overlay
action_alias launch_tb launch --cwd=current --type=tab
action_alias launch_hs launch --cwd=current --location=hsplit --bias=30
action_alias launch_vs launch --cwd=current --location=vsplit --bias=40
# panes = kitty windows
map ctrl+shift+t new_tab_with_cwd
map super+enter new_os_window
map ctrl+space launch_hs
map ctrl+enter launch_vs
map super+n new_os_window
map ctrl+shift+space new_os_window
# Splits
map ctrl+shift+j launch_hs
map ctrl+shift+l launch_vs
map ctrl+shift+h previous_tab
map ctrl+shift+k next_tab
# Shortcuts
map ctrl+shift+g launch_ov lazygit
map ctrl+shift+f toggle_layout stack
map super+z toggle_layout stack
map ctrl+shift+e launch_tb nvim
# herdr host: a *separate* kitty process, own config (launch cannot take --config)
# tmux host: same trick — kitty stays dumb, tmux owns panes/windows/sessions
map ctrl+shift+p launch_hs atuin-pick
# Spawn
map super+t launch --type=background --cwd=current kitty --class=kitty-tmux --config ~/.config/kitty/tmux.conf
map super+a launch --type=background --cwd=current kitty --class=kitty-herdr --config ~/.config/kitty/herdr.conf
# Misc
map ctrl+shift+c copy_to_clipboard
map ctrl+shift+v paste_from_clipboard
# tabs
map alt+q goto_tab 1
map alt+w goto_tab 2
map alt+e goto_tab 3
map alt+r goto_tab 4
map alt+t goto_tab 5
map alt+y goto_tab 6
map alt+u goto_tab 7
map alt+i goto_tab 8
map alt+o goto_tab 9
# split nav (vim-aware)
map ctrl+h kitten pass_keys.py neighboring_window left ctrl+h
map ctrl+j kitten pass_keys.py neighboring_window bottom ctrl+j
map ctrl+k kitten pass_keys.py neighboring_window top ctrl+k
map ctrl+l kitten pass_keys.py neighboring_window right ctrl+l
# resize
map super+left resize_window narrower
map super+right resize_window wider
map super+up resize_window taller
map super+down resize_window shorter 3
tab_bar_style powerline
tab_powerline_style angled
tab_bar_align left
tab_bar_edge top
tab_title_template " {index}"
active_tab_title_template " {title}"
# BEGIN_KITTY_FONTS
font_family family="VictorMono Nerd Font Mono"
bold_font auto
italic_font auto
bold_italic_font auto
# END_KITTY_FONTS
#
include themes/cyberdream.conf