LinuxCommandLibrary

kitty

Kitty: GPU-accelerated terminal emulator

TLDR

Open a new terminal

$ kitty
copy

Open a terminal with the specified title for the window
$ kitty --title "[title]"
copy

Start the theme-chooser builtin
$ kitty +kitten themes
copy

Display an image in the terminal
$ kitty +kitten icat [path/to/image]
copy

Copy the contents of stdin to the clipboard
$ echo [example] | kitty +kitten clipboard
copy

SYNOPSIS

kitty [options] [program [arguments...]]

PARAMETERS

--config <path>
    Specify a custom configuration file.

--session <path>
    Load a kitty session file.

--class <string>
    Set the window class. Useful for window managers.

--title <string>
    Set the window title.

--name <string>
    Set the window instance name (resource name).

--geometry <WxH>
    Set the initial window size (width x height in pixels).

--start-as <fullscreen|maximized|minimized|normal>
    Control the initial window state.

--hold
    Keep the terminal window open after the program exits.

--single-instance
    If specified, when running a new kitty instance it will focus an already open kitty instance.

--dump-config
    Print the complete kitty configuration to standard output.

--version
    Print the kitty version and exit.

DESCRIPTION

Kitty is a fast, feature-rich, GPU-based terminal emulator for Linux and macOS. It emphasizes performance, features, and usability. Unlike many terminal emulators that rely on the CPU for rendering, Kitty leverages the GPU for rendering, leading to smoother animations, lower latency, and reduced CPU usage, especially when dealing with complex text layouts or high terminal activity.

Kitty supports a wide range of terminal features, including Unicode, True Color, ligatures, and Sixel graphics. It is highly configurable, allowing users to customize its appearance and behavior through a configuration file. Key features include tabs, windows, multiplexing, remote control via its command interface, and support for various keyboard layouts and input methods. It also supports custom themes, fonts, and window arrangements to suit individual preferences. With the kitty command, a user can launch the terminal emulator with various options like configuring screen size, starting a specific program within the terminal, or defining configurations via a configuration file.

CONFIGURATION

Kitty's behavior is highly configurable through a configuration file. This file, typically located at ~/.config/kitty/kitty.conf, allows users to customize fonts, colors, keybindings, window layouts, and other settings. The configuration file supports a wide range of options, providing fine-grained control over the terminal's appearance and behavior.

REMOTE CONTROL

Kitty provides a command interface that allows for remote control and automation. This interface can be used to create scripts and tools that interact with the terminal, such as opening new windows, sending commands, and managing layouts. The kitty command itself can be used to send commands to a running instance of Kitty.

HISTORY

Kitty was created to address the performance limitations and feature gaps found in existing terminal emulators. The development focused on leveraging GPU acceleration for rendering, resulting in a significantly faster and more responsive terminal experience. It has gained popularity among developers and power users who demand a high-performance and customizable terminal emulator.

SEE ALSO

tmux(1), screen(1)

Copied to clipboard