* A new last_used_layout function that can be mapped to a shortcut to switch to the previously used window layout (#870)
* New neighboring_window and move_window functions to switch to neighboring windows in the current layout, and move them around, similar to window movement in vim (#916)
* A new pipe function that can be used to pipe the contents of the screen and scrollback buffer to any desired program running in a new window, tab or overlay window. (#933)
* Add a new kitty --start-as command line flag to start kitty full-screen/maximized/minimized. This replaces the --start-in-fullscreen flag introduced in the previous release (#935)
* When mapping the new_tab action allow specifying that the tab should open next to the current tab instead of at the end of the tabs list (#979)
* Fix a bug causing incorrect line ordering when viewing the scrollback buffer if the scrollback buffer is full (#960)
* Fix drag-scrolling not working when the mouse leaves the window confines (#917)
* Workaround for broken editors like nano that cannot handle newlines in pasted text (#994)
* Linux: Ensure that the python embedded in the kitty binary build uses UTF-8 mode to process command-line arguments (#924)
* Linux: Handle fonts that contain monochrome bitmaps (such as the Terminus TTF font) (#934)
* Have the kitty --title flag apply to all windows created using kitty --session (#921)
* Revert change for backspacing of wide characters in the previous release, as it breaks backspacing in some wide character aware programs (#875)
* Fix kitty @set-colors not working for tab backgrounds when using the fade tabbar style (#937)
* Linux: Fix window icon not set on X11 for the first OS window (#961)
* Remote control: Fix the focus_window command not focusing the top-level OS window of the specified kitty window (#1003)
* Fix using focus_follows_mouse causing text selection with the mouse to malfunction when using multiple kitty windows (#1002)
* Add a new kitty --start-in-fullscreen command line flag to start kitty in full screen mode (#856)
* Linux: Do not enable IME input via ibus unless the GLFW_IM_MODULE=ibus environment variable is set. IME causes key processing latency and even missed keystrokes for many people, so it is now off by default.
* Fix backspacing of wide characters in wide-character unaware programs not working (#875)
* Linux: Fix number pad arrow keys not working when Numlock is off (#857)
* Wayland: Implement support for clipboard copy/paste (#855)
* Allow mapping shortcuts using the raw key code from the OS (#848)
* Allow mapping of individual key-presses without modifiers as shortcuts
* Fix legacy invocation of icat as kitty icat not working (#850)
* Improve rendering of wavy underline at small font sizes (#853)
* Fix a regression in 0.12.0 that broke dynamic resizing of layouts (#860)
* Wayland: Allow using the kitty --class command line flag to set the app id (#862)
* Add completion of the kitty command for the fish shell (#829)
* Linux: Fix XCompose rules with no defined symbol not working (#880)
* Linux: Fix crash with some Nvidia drivers when creating tabs in the first top level-window after creating a second top-level window. (#873)
* Preserve the mouse selection even when the contents of the screen are scrolled or overwritten provided the new text does not intersect the selected lines.
* Linux: Implement support for Input Method Extensions (multilingual input using standard keyboards) via IBus (#469)
* Implement completion for the kitty command in bash and zsh. See Completion for kitty.
* Render the text under the cursor in a fixed color, configurable via the option cursor_text_color (#126)
* Add an option env to set environment variables in child processes from kitty.conf
* Implement high precision scrolling with the trackpad on platforms such as macOS and Wayland that implement it. (#819)
* Remote control: Allow changing the current window layout with a new kitty @ goto-layout command (#845)
* Remote control: Allow matching windows by the environment variables of their child process as well
* Allow running kittens via the remote control system (#738)
* Allow enabling remote control in only some kitty windows
* Add a keyboard shortcut to reset the terminal (ctrl+shift+delete). It takes parameters so you can define your own shortcuts to clear the screen/scrollback also (#747)
* Fix one-pixel line appearing at window edges at some window sizes when displaying images with background opacity enabled (#741)
* diff kitten: Fix error when right hand side file is binary and left hand side file is text (#752)
* kitty @ new-window: Add a new option kitty @ new-window --window-type to create top-level OS windows (#770)
* Fix detection of URLs in HTML source code (URLs inside quotes) (#785)
* Implement support for emoji skin tone modifiers (#787)
* Round-trip the zwj unicode character. Rendering of sequences containing zwj is still not implemented, since it can cause the collapse of an unbounded number of characters into a single cell. However, kitty at least preserves the zwj by storing it as a combining character.
* Linux: Fix slow startup on some systems caused by GLFW searching for joysticks. Since kitty does not use joysticks, disable joystick support. (#830)
* Draw only the minimum borders needed for inactive windows. That is only the borders that separate the inactive window from a neighbor. Note that setting a non-zero window margin overrides this and causes all borders to be drawn. The old behavior of drawing all borders can be restored via the draw_minimal_borders setting in kitty.conf.
* Fix triple-click to select line not working when the entire line is filled (#703)
* When dragging to select with the mouse "grab" the mouse so that if it strays into neighboring windows, the selection is still updated (#624)
* When clicking in the margin/border area of a window, map the click to the nearest cell in the window. Avoids selection with the mouse failing when starting the selection just outside the window.
* When drag-scrolling stop the scroll when the mouse button is released.
* Fix a regression in the previous release that caused pasting large amounts of text to be duplicated (#709)
* Linux: Allow using XKB key names to bind shortcuts to keys not supported by GLFW (#665)
* kitty shell: Ignore failure to read readline history file. Happens if the user migrates their kitty cache directory between systems with incompatible readline implementations.
* hints kitten: Add a kitty +kitten hints --multiple option to select multiple items (#687)
* Fix pasting large amounts of text very slow (#682)
* Add an option single_window_margin_width to allow different margins when only a single window is visible in the layout (#688)
* Add a kitty --hold command line option to stay open after the child process exits (#667)
* diff kitten: When triggering a search scroll to the first match automatically
* kitty --debug-font-fallback also prints out what basic fonts were matched
* When closing a kitty window reset the mouse cursor to its default shape and ensure it is visible (#655).
* Remote control: Speed-up reading of command responses
* Linux installer: Fix installer failing on systems with python < 3.5
* diff kitten: Implement searching for text in the diff (#574)
* Add an option startup_session to kitty.conf to specify a default startup session (#641)
* Add a command line option kitty --wait-for-single-instance-window-close to make kitty --single-instance wait for the closing of the newly opened window before quitting (#630)
* diff kitten: Allow theming the selection background/foreground as well
* diff kitten: Display CRLF line endings using the unicode return symbol instead of <d> as it is less intrusive (#638)
* diff kitten: Fix default foreground/background colors not being restored when kitten quits (#637)
* Fix kitty @ set-colors --all not working when more than one window present (#632)
* Fix a regression that broke the legacy increase/decrease_font_size actions
* A new tab bar style "fade" in which each tab's edges fade into the background.
* A new kitten to create dock panels on X11 desktops showing the output from arbitrary terminal programs.
* Reduce data sent to the GPU per render by 30% (commit: 8dea5b3e)
* Implement changing the font size for individual top level (OS) windows (#408)
* When viewing the scrollback in less using ctrl+shift+h and kitty is currently scrolled, position the scrollback in less to match kitty's scroll position. (#148)
* ssh kitten: Support all SSH options. It can now be aliased directly to ssh for convenience. (#591)
* icat kitten: Add kitty +kitten icat --print-window-size to easily detect the window size in pixels from scripting languages (#581)
* hints kitten: Allow selecting hashes from the terminal with ctrl+shift+p>h useful for git commits. (#604)
* Allow specifying initial window size in number of cells in addition to pixels (#436)
* Add a setting to control the margins to the left and right of the tab-bar (#584)
* When closing a tab switch to the last active tab instead of the right-most tab (#585)
* Wayland: Fix kitty not starting when using wl_roots based compositors (#157)
* Wayland: Fix mouse wheel/touchpad scrolling in opposite direction to other apps (#594)
* Add a config option (editor) to set the EDITOR kitty uses (#580)
* Add a config option (x11_hide_window_decorations) to hide window decorations under X11/Wayland (#607)
* Add an option to @set-window-title to make the title change non-permanent (#592)
* Add support for the CSI t escape code to query window and cell sizes (#581)
* Linux: Fix fonts not being correctly read from TrueType Collection (.ttc) files (#577)
* Fix inactive_text_alpha also applying to the tab bar (#612)
* hints kitten: Fix a regression that caused some blank lines to be not be displayed.
* Linux: Include a man page and the HTML docs when building the linux-package
* Remote control: Fix kitty @ sometimes failing to read the response from kitty. (#614)
* Fix kitty @ set-colors not working with the window border colors. (#623)
- Add BuildRequires: python3-Sphinx for docu building
- Add documentation and man pages to files section
* Add a kitten to easily ssh into servers that automatically copies the terminfo files over. kitty +kitten ssh myserver.
* diff kitten: Make the keyboard shortcuts configurable (#563)
* Allow controlling background_opacity via either keyboard shortcuts or remote control. Note that you must set dynamic_background_opacity yes in kitty.conf first. (#569)
* diff kitten: Add keybindings to scroll by page
* diff kitten: Fix incorrect syntax highlighting for a few file formats such as yaml
* Fix Ctrl+Alt+Space not working in normal and application keyboard modes (#562)