kitty(1)
kitty is a fast, feature-rich GPU-based terminal emulator written in C and Python.
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
| Flag | What it does |
|---|---|
-c, --config | Read config from specified file instead of ~/.config/kitty/kitty.conf |
-o, --override | Override config options, e.g. -o font_size=14 background=#1e1e1e |
--class | Set the WM_CLASS property; useful for window rules in tiling managers |
--name | Set the window title |
--title | Set the initial window title |
-d, --directory | Change to directory before running the program |
--hold | Keep the window open when the program exits |
--session | Load a saved session from file or restore previous session |
--single-instance | Reuse existing kitty instance instead of launching a new window |
--listen-on | Listen for remote commands via Unix socket or TCP |
--debug-font-fallback | Print font fallback information for debugging |
Examples
Start kitty with default settings and open an interactive shell
kittyLaunch kitty with custom font size and dark background color
kitty -o font_size=16 -o background=#282c34Open kitty with custom title and start in specific directory
kitty --title 'My Project' -d ~/projects/myappLaunch kitty using alternate config file and start nvim editor
kitty -c /etc/kitty.conf nvimRun a command and keep the window open after it finishes
kitty --hold cat /var/log/syslogStart kitty with specific WM class for tiling manager window rules
kitty --class floating --name scratchStart kitty listening for remote control commands on Unix socket
kitty --listen-on=unix:/tmp/kitty-socketSend text to existing kitty window with 'Python' in title via remote control
kitty @ send-text --match 'title:Python' 'print(42)\n'