В прошлом выпуске про kitty разобрались с установкой и темами, а сегодня — remote control: возможность управлять окнами и вкладками снаружи, командами из скрипта, а не руками с клавиатуры.
По умолчанию эта возможность выключена — нужно явно разрешить в kitty.conf:
allow_remote_control yes
Вариант yes разрешает команды от любого процесса в системе — для разовых экспериментов на своей машине нормально, но для более аккуратной настройки есть socket-only (команды принимаются только через явно указанный unix-сокет) и password (доступ по паролю, с возможностью ограничить конкретные команды через remote_control_password). После правки конфига kitty нужно перезапустить или сделать kitten @ load-config.
Команды отправляются через kitten @ <команда>. Открыть новое окно с заданным заголовком:
kitten @ launch --type=window --title "deploy log"
--type принимает помимо window ещё tab и os-window — то есть тем же вызовом можно открыть целую вкладку вместо окна-сплита. Сменить заголовок уже существующего окна (например, когда долгий скрипт меняет статус прямо в название таба) — отдельная команда:
kitten @ set-window-title "backup: 42%"
Без указания --match команда применяется к текущему активному окну — удобно, когда сам скрипт выполняется в том окне, которое хочет переименовать, вызывая себя через && в конце долгой команды.
Для разовой проверки без правки конфига есть альтернатива — запустить сам kitty с remote control сразу включённым:
kitty -o allow_remote_control=yes
Полезно, когда не хочется трогать постоянный конфиг ради теста одной команды.
#kitty #terminal
