Kitty terminal¶

Kitty Terminal is a fast, feature-rich, GPU based terminal emulator providing additional features via+kitten extensions.
Practicalli uses Kitty as the terminal application on Linux and MacOS operating systems. Kitty is used for running Neovim and all command line tools.
Install¶
Download kitty from GitHub releases or use one of the package managers for your operating system.
Use the installer script to install in ~/.local/kitty.app on Linux and /Applications/kitty.app on macOS.
Install script for Linux & MacOSX
Add kitty and kitten to the operating system path by creating symbolic links
Install script for Linux & MacOSX
Include kitty in desktop launchers using the kitty.desktop file
Symbolic link for Kitty desktop application
Open text files and images in kitty via the file manager
Configuration¶
Copy the installed configuration to make personal changes, or start a new configuration file in ~/.config/kitty/kitty.conf
Practicalli Kitty configuration is included in the Practicalli Dotfiles repository. Clone the repository
Clone Practicalli Dotfiles
Create a symbolic link to the kitty configuration from the$HOME/.config directory
Practicalli Kitty configuration
Fonts¶
Set the font family in the kitty.conf configuration file
Configure Kitty Font from Practicalli Dotfiles
Nerd Fonts provide symbols and icons to Neovim and other terminal tools that support graphics, e.g Powerline10k command prompt themes
Nerd Fonts already included in Kitty Terminal
Nerd Fonts do not need to be installed when using Kitty Terminal as they are already available.
Not Required - Manually Install Nerdfonts
Manually installing fonts is not required, however, for completeness this is a previous approach that was used:
Download a Nerd Font and configure the font in kitty.conf
Or download the Symbols Nerd Font font package for use with any font and add the Nerd Font symbols to Kitty via a symbol map configuration.
Include Nerdfont Symbols only
Common Key mappings¶
Terminal session management.
Ctrl+Shift+t to create a new session in a tab window
Ctrl+Shift+Left or Right to switch between tabs to the left or right
Ctrl+Shift+q to close a window
Ctrl+Shift+Enter to create a new session in split window
Ctrl+Shift+[ or ] to switch between window splits
Ctrl+Shift+w to close a window
Other common commands include:
Ctrl+Shift+= to increase the font size without restarting kitty
Ctrl+Shift+- to increase the font size without restarting kitty
Ctrl+Shift+F11 to toggle kitty full-screen
Ctrl+Shift+c copy from kitty terminal to clipboard
Ctrl+Shift+x copy from kitty terminal to clipboard
Ctrl+Shift+v paste into to kitty terminal from clipboard
Ctrl+Shift+s paste into to kitty terminal from clipboard
Kitten features¶
kittens provide additional features. Recommended features include:
- Theme kitten - in-terminal theme browser and selector
- diff - fast, side-by-side diff for the terminal with syntax highlighting
- Clipboard - Copy/paste to the clipboard from shell scripts, even over SSH
- SSH - SSH with automatic shell integration, connection re-use for low latency and easy cloning of local shell and editor configuration to the remote host
Themes¶
Theme kitten provides a simple way to browse available themes and select a theme for use
Browse available themes and apply one, or Ctrl+c to cancel
Change themes automatically to the given theme name (the theme must exist)
Themes used by Practicalli
Practicalli uses the Gruvbox Material Light Soft as the light theme
Practicalli uses Gruvbox Material Dark Soft as the dark themeThe first time the theme kitten is run the following config is added to the ~.config/kitty/kitty.conf file and the chosen theme configuration written to the ~/.config/kitty/current-theme.conf file
This configuration shows the name of the theme, which is also in the top of the current-theme.conf file
Icon support from Nerd fonts, download and include the configuration to show icons in terminal based editors (e.g. Neovim, Emacs, etc.)
Diff¶
The Diff kitten provides a fast way to compare files, although there is no support for merging changes.
Kitty supports diff of image files, showing the two images side by side.
, or > jumps to next diff match
. or < jumps to previous diff match
SSH¶
The +kitten option ensures the remote environment is configured correctly for the Kitty terminal
Image viewer¶
create an alias in your shell configuration file, e.g. shell-aliases