kitty 0.31.0 – GPU-accelerated terminal emulator.
kitty is a fast, featureful, GPU based terminal emulator.
Highlights:
Offloads rendering to the GPU for lower system load and buttery smooth scrolling. Uses threaded rendering to minimize input latency
Supports all modern terminal features: graphics (images), unicode, true-color, OpenType ligatures, mouse protocol, focus tracking, bracketed paste and several new terminal protocol extensions
Supports tiling multiple terminal windows side by side in different layouts without needing to use an extra program like tmux
Can be controlled from scripts or the shell prompt, even over SSH
Has a framework for Kittens, small terminal programs that can be used to extend kitty’s functionality. For example, they are used for Unicode input, Hints and Side-by-side diff
Supports startup sessions which allow you to specify the window/tab layout, working directories and programs to run on startup
Cross-platform: kitty works on Linux and macOS, but because it uses only OpenGL for rendering, it should be trivial to port to other Unix-like platforms
Allows you to open the scrollback buffer in a separate window using arbitrary programs of your choice. This is useful for browsing the history comfortably in a pager or editor
Has multiple copy/paste buffers, like vim
Allow easily running arbitrarily complex remote control scripts without needing to turn on remote control
A new option menu_map that allows adding entries to the global menubar on macOS
A new escape code that can be used by programs running in the terminal to change the shape of the mouse pointer
Graphics protocol: Support for positioning images relative to other images
A new option single_window_padding_width to use a different padding when only a single window is visible
A new mouse action mouse_selection word_and_line_from_point to select the current word under the mouse cursor and extend to end of line
A new option underline_hyperlinks to control when hyperlinks are underlined
Allow using the full range of standard mouse cursor shapes when customizing the mouse cursor
macOS: When running the default shell with the login program fix ~/.hushlogin not being respected when opening windows not in the home directory
macOS: Fix poor performance when using ligatures with some fonts, caused by slow harfbuzz shaping
kitten @ set-background-opacity –toggle – a new flag to easily switch opacity between the specified value and the default
Fix a regression caused by rewrite of kittens to Go that made various kittens reset colors in a terminal when the colors were changed by escape code
Fix trailing bracket not ignored when detecting a multi-line URL with the trailing bracket as the first character on the last line
Fix the kitten @ launch –copy-env option not copying current environment variables
Fix a regression that broke kitten update-self
Two new event types for watchers, on_title_change and on_set_user_var
When pasting, if the text contains terminal control codes ask the user for permission. See paste_actions for details. Thanks to David Leadbeater for discovering this.
Render Private Use Unicode symbols using two cells if the second cell contains an en-space as well as a normal space
macOS: Fix a regression in the previous release that caused kitten @ ls to not report the environment variables for the default shell
Desktop notification protocol: Allow applications sending notifications to specify that the notification should only be displayed if the window is currently unfocused
unicode_input kitten: Fix a regression that broke the “Emoticons” tab
Shell integration: Fix sudo –edit not working and also fix completions for sudo not working in zsh
A new action set_window_title to interactively change the title of the active window
ssh kitten: Fix a regression that broken ctrl+space mapping in zsh
Wayland: Fix primary selections not working with the river compositor