Kitty Reference

kitty - the fast, feature-rich, cross-platform, GPU based terminal

Configuration File

$HOME/.config/kitty/kitty.conf is where you will find the configuration file.

-> ls -l $HOME/.config/kitty/kitty.conf
.rw-rw-r--@ 88k thedevjournal  8 Feb  2025 /home/thedevjournal/.config/kitty/kitty.conf

Changing Font and Size

You can use the kitty +list-fonts to list the available fonts.

font_family      Operator Mono Book
bold_font        Operator Mono Medium
italic_font      Operator Mono Book Italic
bold_italic_font Operator Mono Medium Italic
font_size        16.0

Configure Scrollback

Indicates how many lines you can scroll back. Higher value means you can scroll up quite a lot, but at the cost of your memory.

scrollback_lines	           5000
scrollback_pager_history_size    10

Also, if you scroll using mouse, you might want to configure wheel_scroll_multiplier. This allows you to scroll faster with mouse wheel.

wheel_scroll_multiplier   5.0

Configuring Tabs

Basic

First and foremost, very basic configurations relating to tabs.

tab_bar_edge             bottom         # Where to place the tab bar (top or bottom). bottom is default
tab_bar_margin_width        0.0         # The margin to the left and right of the tab bar (in pts).
tab_bar_margin_height   0.0 0.0         # The margin above and below the tab bar (in pts)
tab_bar_align              left         # Alignment of tab bars - left (default), center, right
tab_bar_min_tabs              2         # Min number of tabs to show the tab bar
tab_switch_strategy    previous         # Which tab to select when a tab is closed - previous(default), left or right, last

Style and Colors

The main configuration is tab_bar_style which takes values - fade (default), separator, powerline, custom, hidden. Following are few examples for reference.

NameExample configResults
fade
tab_bar_style             fade
tab_fade                  0.25 0.5 0.75 1
active_tab_font_style     bold
inactive_tab_foreground   #888888
inactive_tab_background   #272822
active_tab_foreground     #000000
active_tab_background     #FC89AC
powerline
tab_bar_style             powerline
tab_powerline_style       slanted   # Options: angled, slanted, round
active_tab_font_style     bold
active_tab_foreground     #000
active_tab_background     #A6E22E
inactive_tab_foreground   #444
inactive_tab_background   #272822
separator
tab_bar_style       separator
tab_separator       " | "
active_tab_font_style     bold
active_tab_foreground     #000
active_tab_background     #A6E22E
inactive_tab_foreground   #444
inactive_tab_background   #272822

Background

Following are usual background configurations

background_opacity        1.0      # Configure opacity of the kitty window
background_image          /home/absolute/path/to/the/png-image.png
background_image_layout   scaled   # Other values - tiled, mirror-tiled, scaled, clamped, centered, cscaled
background_tint           0.2      # How much tint should be applied to background-image

You can also add a logo/watermark to your terminal using following configs.

window_logo_path        /home/absolute/path/to/the/png-logo-image.png
window_logo_position    bottom-right    # Where is the logo placed
window_logo_alpha       0.5             # How much does the logo fade into background

Borders

Border configs are as below:

window_margin_width           1       # Have a bit of margin to enable the borders for split panes
window_border_width         3px       # Width of the borders
window_padding_width          5       # Padding of content inside the window (all 4 sides)
window_padding_width      5 3 5       # Padding of content inside the window (top horizontal bottom)
window_padding_width   5 10 5 3       # Padding of content inside the window (top right bottom left)
active_border_color   #00FF00       # Border color for active window panel
inactive_border_color #333333       # Border color for inactive window panel
inactive_text_alpha        0.25       # Dim the text in the inactive window panel

Clipboard

Copy on Select

copy_on_select     yes

Right click to Paste

mouse_map right click ungrabbed paste_from_selection

Commands

kitty +list-fonts

Allows you to see available fonts and configure the one of your choice.

-> kitty +list-fonts
 Andale Mono             ∥                                               Mononoki Nerd Font
 Courier                 ∥
 Courier 10 Pitch        ∥ Styles: Bold, Bold Italic, Italic, Regular
 Courier New             ∥
 DejaVu Sans Mono        ∥ Press the Enter key to choose this family
 FreeMono                ∥
 IPAGothic               ∥ --------------------------------------------------- preview ---------------------------------------------------
 Liberation Mono         ∥ abcdefghijklmnopqrstuvwxyz 0123456789 ABCDEFGHIJKLMNOPQRSTUVWXYZ !"#$%&'()**+, - . /:; <<=>?@[]^_`{|}"~
 Mitra                   ∥
>Mononoki Nerd Font      ∥
 Mononoki Nerd Font Mono ∥
 Nimbus Mono PS          ∥
 Noto Mono               ∥
 Noto Sans SignWriting   ∥
 Ubuntu Mono             ∥
 Ubuntu Sans Mono        ∥
 Unifont                 ∥
 Unifont CSUR            ∥
 Unifont Sample          ∥
 Unifont Upper           ∥
 Unifont-JP              ∥

Download and Change Themes

kitten themes

Shortcuts

ShortcutAction
CTRL + SHIFT + F2Edit kitty.conf
CTRL + SHIFT + F5Reload kitty.conf configurations
CTRL + SHIFT + F6Debug kitty.conf configurations