Kitty

I use kitty as my terminal emulator, cause who doesn’t love cute kitties?

Config

My config is honestly not very interesting, just some appearance settings and some keybindings. The only mildly interesting thing is how to make it use the color scheme from pywal. More on that below.

#### Config File for the Terminal Emulator KITTY
# Install: 
# > curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin
# symlink to path: 
# > ln -s ~/.local/kitty.app/bin/kitty ~/.local/bin/
# Add Desktop/taskbar support:
# > cp ~/.local/kitty.app/share/applications/kitty.desktop ~/.local/share/applications
# > sed -i "s|Icon=kitty|Icon=/home/$USER/.local/kitty.app/share/icons/hicolor/256x256/apps/kitty.png|g" ~/.local/share/applications/kitty.desktop


### Colors from Pywal
include ~/.cache/wal/colors-kitty.conf

### Fonts
font_family JetBrainsMono Nerd Font
font_size 11.5
adjust_line_height 125%

### Ligatures
disable_ligatures never

### Cursor & Mouse
cursor_blink_interval 0
mouse_hide_wait 3.0

### Performance
scrollback_lines 2000

### URLs
url_color #0087bd
url_style single
open_url_with default

### Borders and sizes
draw_minimal_borders yes
draw_minimal_borders yes
window_margin_width 0
window_padding_width 5
remember_window_size  no
initial_window_width  1000
initial_window_height 650
hide_window_decorations yes

### Tabs
tab_bar_edge top
tab_bar_margin_width 0.0
tab_bar_margin_height 0.0 0.0
tab_bar_style powerline
tab_fade 0.25 0.5 0.75 1
tab_powerline_style angled
tab_title_template {index}: {title}
active_tab_font_style   bold-italic
inactive_tab_font_style normal

tab_bar_background none


### Appearance
background_opacity 0.8
dynamic_background_opacity yes

### Keyboard Shortcuts
kitty_mod ctrl+shift

## Clipboard
map kitty_mod+c copy_to_clipboard
map kitty_mod+v paste_from_clipboard
map kitty_mod+s paste_from_selection
map kitty_mod+o pass_selection_to_program

## Scrolling
map kitty_mod+up        scroll_line_up
map kitty_mod+down      scroll_line_down
map kitty_mod+page_up   scroll_page_up
map kitty_mod+page_down scroll_page_down
map kitty_mod+home      scroll_home
map kitty_mod+end       scroll_end
map kitty_mod+h         show_scrollback

## Window Management
map kitty_mod+enter new_window
map kitty_mod+n new_os_window
map kitty_mod+w close_window
map kitty_mod+] next_window
map kitty_mod+[ previous_window
map kitty_mod+f move_window_forward
map kitty_mod+b move_window_backward
map kitty_mod+` move_window_to_top
map kitty_mod+r start_resizing_window
map kitty_mod+1 first_window
map kitty_mod+2 second_window
map kitty_mod+3 third_window
map kitty_mod+4 fourth_window
map kitty_mod+5 fifth_window
map kitty_mod+6 sixth_window
map kitty_mod+7 seventh_window
map kitty_mod+8 eighth_window
map kitty_mod+9 ninth_window
map kitty_mod+0 tenth_window

## Tab Management
map kitty_mod+right next_tab
map kitty_mod+left  previous_tab
map kitty_mod+t     new_tab_with_cwd
map kitty_mod+q     close_tab
map shift+cmd+w     close_os_window
map kitty_mod+.     move_tab_forward
map kitty_mod+,     move_tab_backward
map kitty_mod+alt+t set_tab_title
map alt+1 goto_tab 1
map alt+2 goto_tab 2
map alt+3 goto_tab 3
map alt+4 goto_tab 4
map alt+5 goto_tab 5
map alt+6 goto_tab 6
map alt+7 goto_tab 7
map alt+8 goto_tab 8
map alt+9 goto_tab 9
map alt+0 goto_tab 10

map kitty_mod+l next_layout

## Font
map kitty_mod+plus     change_font_size all +2.0
map kitty_mod+minus     change_font_size all -2.0
map kitty_mod+backspace change_font_size all 0

map kitty_mod+e open_url_with_hints

## Opacity
map kitty_mod+alt+plus    set_background_opacity +0.1
map kitty_mod+alt+minus    set_background_opacity -0.1
map kitty_mod+alt+enter    set_background_opacity 1
map kitty_mod+alt+backspace    set_background_opacity default

## Config
map kitty_mod+delete clear_terminal reset active
map kitty_mod+f5 load_config_file
map kitty_mod+f6 debug_config



# Misc
enable_audio_bell no
confirm_os_window_close 2

Pywal template

For me the default pywal template for kitty somehow didn’t theme the colors of tabs. No idea if that’s still the case nowadays, but I just put the template from here in my ~/.config/wal/templates directory. No reason to change a running system.

# Added custom template cause for some reason the default one doesn't include
# tab colors in my pywal installation

foreground         {foreground}
background         {background}
cursor             {cursor}

active_tab_foreground     {background}
active_tab_background     {foreground}
inactive_tab_foreground   {foreground}
inactive_tab_background   {background}

active_border_color   {foreground}
inactive_border_color {background}
bell_border_color     {color1}

color0       {color0}
color8       {color8}
color1       {color1}
color9       {color9}
color2       {color2}
color10      {color10}
color3       {color3}
color11      {color11}
color4       {color4}
color12      {color12}
color5       {color5}
color13      {color13}
color6       {color6}
color14      {color14}
color7       {color7}
color15      {color15}