Kitty — GPU-ускоренный терминал с собственной системой окон, вкладок и расширений (kittens). Конфиг: ~/.config/kitty/kitty.conf. Перезагрузка конфига без перезапуска: ctrl+shift+f5.
Архитектура окон
Kitty оперирует тремя уровнями: OS Window → Tab → Window (split). Каждая вкладка содержит одно или несколько окон, расположение которых определяется текущим layout. Доступные layouts: tall, fat, grid, horizontal, vertical, stack, splits. Layout splits — наиболее гибкий, позволяет произвольные вложенные разбиения.
Переключение layout циклически: ctrl+shift+l.
Keybindings
Модификатор по умолчанию — ctrl+shift (переопределяется через kitty_mod).
Вкладки (Tabs)
| Комбинация | Действие |
|---|---|
kitty_mod+t |
Новая вкладка |
kitty_mod+q |
Закрыть вкладку |
kitty_mod+right |
Следующая вкладка |
kitty_mod+left |
Предыдущая вкладка |
kitty_mod+. |
Переместить вкладку вправо |
kitty_mod+, |
Переместить вкладку влево |
kitty_mod+alt+t |
Задать имя вкладки |
Окна (Splits)
| Комбинация | Действие |
|---|---|
kitty_mod+enter |
Новое окно (split) |
kitty_mod+w |
Закрыть окно |
kitty_mod+] |
Следующее окно |
kitty_mod+[ |
Предыдущее окно |
kitty_mod+f |
Переместить окно вперёд |
kitty_mod+b |
Переместить окно назад |
kitty_mod+r |
Режим ресайза (стрелки для изменения, Esc для выхода) |
kitty_mod+l |
Сменить layout |
Скроллбек
| Комбинация | Действие |
|---|---|
kitty_mod+up |
Скролл вверх (построчно) |
kitty_mod+down |
Скролл вниз (построчно) |
kitty_mod+page_up |
Скролл вверх (постранично) |
kitty_mod+page_down |
Скролл вниз (постранично) |
kitty_mod+home |
В начало скроллбека |
kitty_mod+end |
В конец скроллбека |
kitty_mod+h |
Открыть скроллбек в пейджере (less) |
kitty_mod+g |
Открыть последний вывод команды в пейджере |
Буфер обмена и шрифт
| Комбинация | Действие |
|---|---|
kitty_mod+c |
Копировать в буфер |
kitty_mod+v |
Вставить из буфера |
kitty_mod+equal |
Увеличить шрифт |
kitty_mod+minus |
Уменьшить шрифт |
kitty_mod+backspace |
Сбросить размер шрифта |
Kittens и утилиты
| Комбинация | Действие |
|---|---|
kitty_mod+e |
Открыть URL из вывода (kitten hints) |
kitty_mod+p>f |
Вставить путь к файлу из вывода |
kitty_mod+p>l |
Вставить строку из вывода |
kitty_mod+f2 |
Редактировать конфиг в $EDITOR |
kitty_mod+f5 |
Перезагрузить конфиг |
kitty_mod+f6 |
Debug — показать конфигурацию |
kitty_mod+escape |
Открыть kitty shell (командная строка kitty) |
Кастомизация биндингов
Формат в kitty.conf:
map kitty_mod+t new_tab
map ctrl+alt+enter launch --location=hsplit
map ctrl+alt+minus launch --location=vsplit
Для layout splits удобно задать явные горизонтальные/вертикальные разбиения через launch --location=hsplit / vsplit, так как дефолтный kitty_mod+enter использует направление текущего layout.
Отключить биндинг: map kitty_mod+t no_op. Сбросить все дефолтные и начать с нуля: clear_all_shortcuts yes в начале конфига.
Полезные опции конфига
# Шрифт
font_family JetBrainsMono Nerd Font
font_size 12.0
# Тема (подключение внешнего файла)
include current-theme.conf
# Прозрачность (нужен композитор)
background_opacity 0.9
# Курсор
cursor_shape beam
cursor_blink_interval 0
# Скроллбек
scrollback_lines 10000
# Звук
enable_audio_bell no
# Layout по умолчанию
enabled_layouts splits,stack
# Tab bar
tab_bar_style powerline
tab_powerline_style slanted
Источники
- Документация: https://sw.kovidgoyal.net/kitty/conf/
- Все actions: https://sw.kovidgoyal.net/kitty/actions/
- Встроенный выбор тем:
kitty +kitten themes - Отладка нажатий:
kitty --debug-keyboard
Связанные заметки
- tmux cheatsheet — терминальный мультиплексор, часто используется внутри kitty
- Fish Shell — справка — оболочка, запускаемая в kitty
- Neovim: руководство по конфигурации — редактор: шрифты и лигатуры настраиваются на стороне терминала
- Домашний десктоп на CachyOS — окружение, в котором запускается этот терминал
Из библиотеки института уносят только знания. Читателей здесь не считают: посещение не регистрируется, отметок в издании не остаётся, счётчиков нет ни у одного издания фонда.
Издание пополняется и пересверяется. Текст доступен на условиях CC BY-SA 4.0 — унесённое можно передавать дальше на тех же условиях.