$linuxjunkies
>

kitty(1)

kitty is a fast, feature-rich GPU-based terminal emulator written in C and Python.

UbuntuDebianFedoraArch

Synopsis

kitty [OPTIONS] [PROGRAM] [ARGS]

Description

kitty is a modern terminal emulator designed for power users and developers. It uses GPU rendering for fast performance, supports true color and Unicode, and includes advanced features like image display, ligatures, and split panes.

kitty can be used as a drop-in replacement for xterm, gnome-terminal, or other terminal emulators. It supports both interactive shells and running individual programs with custom options for font, colors, and window layout.

Common options

FlagWhat it does
-c, --configRead config from specified file instead of ~/.config/kitty/kitty.conf
-o, --overrideOverride config options, e.g. -o font_size=14 background=#1e1e1e
--classSet the WM_CLASS property; useful for window rules in tiling managers
--nameSet the window title
--titleSet the initial window title
-d, --directoryChange to directory before running the program
--holdKeep the window open when the program exits
--sessionLoad a saved session from file or restore previous session
--single-instanceReuse existing kitty instance instead of launching a new window
--listen-onListen for remote commands via Unix socket or TCP
--debug-font-fallbackPrint font fallback information for debugging

Examples

Start kitty with default settings and open an interactive shell

kitty

Launch kitty with custom font size and dark background color

kitty -o font_size=16 -o background=#282c34

Open kitty with custom title and start in specific directory

kitty --title 'My Project' -d ~/projects/myapp

Launch kitty using alternate config file and start nvim editor

kitty -c /etc/kitty.conf nvim

Run a command and keep the window open after it finishes

kitty --hold cat /var/log/syslog

Start kitty with specific WM class for tiling manager window rules

kitty --class floating --name scratch

Start kitty listening for remote control commands on Unix socket

kitty --listen-on=unix:/tmp/kitty-socket

Send text to existing kitty window with 'Python' in title via remote control

kitty @ send-text --match 'title:Python' 'print(42)\n'

Related commands