Files
2026-04-25 21:41:21 -04:00

197 lines
5.4 KiB
Plaintext

# vim:fileencoding=utf-8:foldmethod=marker
startup_session ~/.config/kitty/default.session
# {{{ General
editor nvim
shell_integration enabled
kitty_mod ctrl+shift
scrollback_lines 10000
notify_on_cmd_finish never
copy_on_select yes
# }}}
# {{{ Window
remember_window_size no
initial_window_width 150c
initial_window_height 31c
enabled_layouts splits
# }}}
# {{{ Appearance
background_opacity 0.85
background_blur 1
dynamic_background_opacity yes
cursor_beam_thickness 1.75
cursor_trail 3
# }}}
# {{{ Remote Control
allow_remote_control yes
listen_on unix:@mykitty
allow_cloning yes
# }}}
# {{{ Font
font_size 13
font_family family='Iosevka Rootiest v2' postscript_name=Iosevka-Rootiest-v2 style=Regular
bold_font family='Iosevka Rootiest v2' postscript_name=Iosevka-Rootiest-v2 style='ExtraBold'
italic_font family='Iosevka Rootiest v2' postscript_name=Iosevka-Rootiest-v2 style='Italic'
bold_italic_font family='Iosevka Rootiest v2' postscript_name=Iosevka-Rootiest-v2 style='ExtraBold Italic'
symbol_map U+e000-U+e00a,U+ea60-U+ebeb,U+e0a0-U+e0c8,U+e0ca,U+e0cc-U+e0d4,U+e200-U+e2a9,U+e300-U+e3e3,U+e5fa-U+e6b1,U+e700-U+e7c5,U+f000-U+f2e0,U+f300-U+f372,U+f400-U+f532,U+f0001-U+f1af0 Symbols Nerd Font Mono
# }}}
# {{{ Tab Bar
tab_bar_style powerline
tab_powerline_style angled
tab_bar_align left
tab_bar_edge top
tab_bar_min_tabs 1
tab_activity_symbol "󱐋 "
tab_title_template "{fmt.fg._f9e2ae}{bell_symbol}{activity_symbol}{fmt.fg.default}{tab.progress_percent}{fmt.fg.tab}{index}:{'🇿' if layout_name == 'stack' and num_windows > 1 else ''}{title}"
# }}}
# {{{ Aliases
action_alias launch_tab launch --type=tab --cwd=current
action_alias launch_win launch --type=window --cwd=current
action_alias view_scrollback launch --stdin-source=@screen_scrollback --stdin-add-formatting --type=overlay less +G -R
action_alias kitty_scrollback_nvim kitten ~/.local/share/nvim/lazy/kitty-scrollback.nvim/python/kitty_scrollback_nvim.py
# }}}
# {{{ Keymaps
# Markers
map f2 remove_marker
map f3 toggle_marker itext 2 ERROR 1 WARNING 3 PASS
# Splits
map f4 launch --location=split
map f5 launch --location=hsplit
map f6 launch --location=vsplit
map f7 layout_action rotate
# Tabs
map kitty_mod+right next_tab
map ctrl+tab next_tab
map kitty_mod+q close_tab
# Launch
map f8 launch_tab nvim
map kitty_mod+n launch_tab nvim
map kitty_mod+F1 kitten keymap.py
# Session
map f11 launch --type=background ~/.config/kitty/save_session/save_session.sh
map f12 load_config_file
# Clipboard
map kitty_mod+c copy_to_clipboard
map kitty_mod+v paste_from_clipboard
map kitty_mod+s paste_from_selection
map shift+insert paste_from_selection
map kitty_mod+o pass_selection_to_program
# Window movement
map shift+up move_window up
map shift+down move_window down
map shift+left move_window left
map shift+right move_window right
map alt+shift+k move_window up
map alt+shift+j move_window down
map alt+shift+h move_window left
map alt+shift+l move_window right
map --when-focus-on var:IS_NVIM alt+shift+k
map --when-focus-on var:IS_NVIM alt+shift+j
map --when-focus-on var:IS_NVIM alt+shift+h
map --when-focus-on var:IS_NVIM alt+shift+l
# Window resize
map alt+k kitten relative_resize.py up 3
map alt+j kitten relative_resize.py down 3
map alt+h kitten relative_resize.py left 3
map alt+l kitten relative_resize.py right 3
map --when-focus-on var:IS_NVIM alt+k
map --when-focus-on var:IS_NVIM alt+j
map --when-focus-on var:IS_NVIM alt+h
map --when-focus-on var:IS_NVIM alt+l
map alt+r start_resizing_window
map --when-focus-on var:IS_NVIM alt+r
# Detach windows
map kitty_mod+f2 detach_window
map kitty_mod+f3 detach_window new-tab
map ctrl+f4 detach_window tab-prev
# Search
map kitty_mod+/ launch --location=hsplit --allow-remote-control kitty +kitten kitty_search/search.py @active-kitty-window-id
# Nvim navigation
map ctrl+shift+h neighboring_window left
map ctrl+shift+j neighboring_window down
map ctrl+shift+k neighboring_window up
map ctrl+shift+l neighboring_window right
map --when-focus-on var:IS_NVIM ctrl+shift+h
map --when-focus-on var:IS_NVIM ctrl+shift+j
map --when-focus-on var:IS_NVIM ctrl+shift+k
map --when-focus-on var:IS_NVIM ctrl+shift+l
# Scrollback (kitty-scrollback.nvim)
map f1 kitty_scrollback_nvim
map kitty_mod+b kitty_scrollback_nvim --config ksb_builtin_last_cmd_output
mouse_map kitty_mod+right press ungrabbed combine : mouse_select_command_output : kitty_scrollback_nvim --config ksb_builtin_last_visited_cmd_output
# }}}
# {{{ Theme: Catppuccin Mocha
env KITTY_THEME=catppuccin-mocha
env CATPPUCCIN_PALETTE=mocha
env CATPPUCCIN_ACCENT=mauve
foreground #cdd6f4
background #1e1e2e
selection_foreground #1e1e2e
selection_background #f5e0dc
cursor #f5e0dc
cursor_text_color #1e1e2e
url_color #f5e0dc
active_border_color #b4befe
inactive_border_color #6c7086
bell_border_color #f9e2af
wayland_titlebar_color system
macos_titlebar_color system
active_tab_foreground #11111b
active_tab_background #cba6f7
inactive_tab_foreground #cdd6f4
inactive_tab_background #181825
tab_bar_background #1e1e2e
mark1_foreground #1e1e2e
mark1_background #b4befe
mark2_foreground #1e1e2e
mark2_background #cba6f7
mark3_foreground #1e1e2e
mark3_background #74c7ec
color0 #45475a
color8 #585b70
color1 #f38ba8
color9 #f38ba8
color2 #a6e3a1
color10 #a6e3a1
color3 #f9e2af
color11 #f9e2af
color4 #89b4fa
color12 #89b4fa
color5 #f5c2e7
color13 #f5c2e7
color6 #94e2d5
color14 #94e2d5
color7 #bac2de
color15 #a6adc8
# }}}