From Free Software Directory
This is the approved revision of this page; it is not the most recent. View the most recent revision.
Jump to: navigation, search


A Wayland-native, fast, feature-rich terminal emulator written in C and Python

kitty is a terminal emulator designed for power keyboard users, though it fully supports mouse interactions as well. Its configuration is a simple, human editable, single file for easy reproducibility. Kitty is Wayland-native.

The code in kitty is designed to be simple, modular and hackable. It is written in a mix of C (for performance sensitive parts) and Python (for easy hackability of the UI). It does not depend on any large and complex UI toolkit, using only OpenGL for rendering everything. It is thus one of the few GPU-accelerated terminal emulators, along with Alacritty.

Finally, kitty is designed from the ground up to support all modern terminal features, such as Unicode, true color, bold/italic fonts, text formatting, etc. It even extends existing text formatting escape codes, to add support for features not available elsewhere, such as colored and styled (curly) underlines. One of the design goals of kitty is to be easily extensible so that new features can be added in the future with relatively little effort.

kitty should not be confused with KiTTY, a fork of PuTTY for Windows.




Verified by

Verified on


Leaders and contributors

Resources and communication

AudienceResource typeURI

Software prerequisites

Required to usefreetype
Required to useOpenGL
Required to buildpkg-config
Required to uselibpng
Weak prerequisiteImageMagick
Required to usefontconfig
Weak prerequisitepygments
Required to usepython >= 3.6
Required to usezlib
Required to buildgcc or clang
Required to useharfbuzz >= 2.2.0
Required to useliblcms2


"GPL-3.0" is not in the list (ACEL, AFL-3.0, AGPL-1.0, AGPL-1.0-or-later, AGPL-3.0, AGPL-3.0-or-later, AGPL-3.0-or-later-with-exception, AGPL-3.0-with-exception, AGPLv1orlater, AGPLv3, ...) of allowed values for the "License" property.

"Users" is not in the list (General, Help, Bug Tracking, Support, Developer) of allowed values for the "Resource audience" property.

Property "Submitted by" (as page type) with input value "{{{Submitted by}}}" contains invalid characters or is incomplete and therefore can cause unexpected results during a query or annotation process. "{{{Submitted date}}}" contains an extrinsic dash or other characters that are invalid for a date interpretation.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the page “GNU Free Documentation License”.

The copyright and license notices on this page only apply to the text on this page. Any software or copyright-licenses or other similar notices described in this text has its own copyright notice and license, which can usually be found in the distribution or license text itself.