Новый релиз эмулятора терминала Kitty 0.47

Вышла версия Kitty 0.47 — быстрого эмулятора терминала на базе графического процессора. Главным нововведением стала функция перетаскивания, позволяющая пользователям переносить файлы из оболочки в приложения с графическим интерфейсом, в том числе через SSH-сессии.

В этом выпуске также расширены возможности перетаскивания внутри Kitty: теперь окна можно перегруппировать, переместить на другую вкладку или в другое окно ОС, а также отделить в отдельное окно ОС. Кроме того, пользователи теперь могут временно отображать заголовки окон с помощью toggle_window_title_bars при перетаскивании окон.

Kitty 0.47 также вводит palette_generate, опцию, которая автоматически генерирует 256-цветную палитру из первых 16 цветов. Еще одно заметное изменение — автоматическая перезагрузка конфигурации, управляемая новой опцией auto_reload_config, устраняющая необходимость вручную перезагружать Kitty после редактирования его конфигурации.

Кроме того, Терминал теперь отображает вверху индикатор выполнения, когда программа сообщает о ходе выполнения с помощью экранной последовательности OSC 9;4. Это поведение управляется новой опцией progress_bar. Кроме того, scroll_line_up и scroll_line_down по умолчанию используют плавную прокрутку, хотя прежнее поведение можно восстановить, переназначив действия без аргумента smooth.

Что касается фокуса окна, опция focus_follows_mouse теперь переключает активное окно только тогда, когда указатель пересекает границу другого окна, а не при каждом движении мыши. Связанная с этим опция позволяет переключать фокус только при перетаскивании, а не при движении указателя.

Для пользователей, работающих с визуальной настройкой, Kitty 0.47 позволяет указывать несколько записей background_image и сохранять их на GPU, что обеспечивает более быструю смену фона. Также добавлена поддержка рендеринга блочных элементов из блока «Unicode Symbols for Legacy Computing Supplement», включая разделенные квадранты блоков, секстанты, блоки размером в одну шестнадцатую и частичные заполнения размером в одну четверть.

Также включены несколько улучшений, специфичных для конкретных платформ. В Wayland удерживание жестов может отменять прокрутку по инерции, когда пальцы находятся на трекпаде, благодаря чему кинетическая прокрутка ощущается более естественной. В Linux Kitty учитывает настройку матрицы fontconfig, обычно используемую для имитации наклона в шрифтах, не имеющих курсивных вариантов. В этом выпуске также устранена проблема с драйвером Nvidia, вызывавшая искажение цветов после выхода из режима ожидания.

В X11 Kitty исправляет регрессию из предыдущего выпуска, которая могла приводить к периодическим сбоям при отключении устройства ввода. Пользователи XWayland также получают исправление проблемы, которая мешала некоторым мышкам с колесиком прокручиваться правильно.

Пользователи MacOS получают новый значок приложения в стиле Tahoe с разными фонами для светлого и тёмного режимов, а также исправления для периодически появляющихся фантомных курсоров, игнорируемых аргументов, передаваемых через open --args, и отсутствующих пунктов «Копировать» и «Вставить» в меню «Правка» глобальной панели меню.

Кроме того, Kitty 0.47 включает исправления удобства использования, касающиеся взаимодействия с полосой прокрутки в полях окна, автодополнения для edit-in-kitty, поведения выделения перенесённых строк, переименования вкладок, перетаскивания по границе разделения, поведения копирования и вставки на границах мягкой переноски, а также утечки ответов из терминальных программ в оболочку после завершения работы.

Другие изменения включают улучшенный вывод при удаленном управлении с помощью session_name и last_focused_at в kitten @ ls, улучшенное отображение ввода пароля в модулях, фиксированные заголовки в модуле diff, конечный символ новой строки для текстового вывода из модуля choose-files, автоматическую обработку расширений .kitty-session в save_as_session и улучшенную производительность при рендеринге панелей вкладок с использованием данных активных процессов.

Дополнительные сведения см. в журнале изменений.