Обновление Ghostty добавляет поддержку украшений на стороне сервера в Linux

На этой неделе вышла новая версия Ghostty, и в этом посте я подробно рассказываю о ключевых изменениях.

Для тех, кто не знаком с ним, Ghostty – это эмулятор терминала с открытым исходным кодом, написанный на языке Zig. Он предлагает «быстрый, многофункциональный и родной» опыт – не претендует на то, что он быстрее, функциональнее или глубже, чем другие родные терминалы, просто предлагает конкурентоспособное сочетание этих трех качеств.

Учитывая, что он делает практически все то же самое, что и другие эмуляторы терминалов, поклонники более известных эмуляторов терминалов не найдут, что присутствие Ghostty отпугивает их от перехода. Это проект для энтузиастов, который можно использовать (или не использовать) в зависимости от потребностей, вкуса или желания.

Его первый релиз в конце прошлого года произвел на меня пугающе хорошее впечатление, и я с интересом наблюдаю за дальнейшим развитием приложения.

Однако эта статья – не обзор основных возможностей и преимуществ Ghostty. Это взгляд на то, что нового появилось в последней версии Ghostty 1.1.0.

Что нового в Ghostty 1.1.0?

Ghostty 1.1.0 – это результат месячного труда разработчиков, составленного из 500 коммитов от 80 участников. За прошедшие 4 недели не было создано новых больших функций, но исправления, доработки и прочие тонкости присутствуют.

Примечательно, что Ghostty 1.1.0 добавляет поддержку украшений на стороне сервера (SSD) в Linux.

Украшения на стороне сервера – новинка в Ghostty 1.1.0. Привычно слышать и упоминать о приложениях, которые добавляют поддержку украшений на стороне клиента (CSD), поэтому легко забыть, что не все (или выбранная ими среда рабочего стола) используют их.

Ghostty 1.1.0 исправляет ситуацию. По умолчанию он использует оконные рамки SSD, если они поддерживаются и предпочитаются базовым композитором на рабочих станциях Wayland (только – команда говорит, что не смогла найти «хорошо поддерживаемый протокол для SSD» на X11).

В результате Ghostty выглядит значительно более соответствующим рабочим столам Linux, которые не являются GNOME Shell, например, KDE Plasma.

Можно принудительно установить CSD, SSD или даже заставить Ghostty вообще не использовать декорации окон, установив для параметра window-decoration значение auto, server, client или none соответственно.

На этом нативная улчшения не заканчивается.

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

Другие изменения

В другом месте Ghostty вводит новый префикс performable: для привязки клавиш, чтобы контролировать, должна ли настроенная комбинация клавиш «потреблять ввод только при выполнении действия», как показано в данном примере:

keybind = performable:ctrl+c=copy_to_clipboard

При такой настройке Ghostty «потребляет» – реагирует на комбинацию клавиш – только если есть выделенный текст, который нужно скопировать. В противном случае сочетание клавиш передается в оболочку (что, как отмечают разработчики приложения, обычно вызывает сигнал прерывания).

Другие общие изменения конфигурации: новый split-divider-color для указания цвета разделителя для сплитов; поддержка двоичной, восьмеричной и шестнадцатеричной системы в palette; переименование параметров привязки клавиш в goto_split, так что top теперь up, а bottomdown.

Элементы управления окном скрываются при максимизации, а цвет разделителя – пользовательский. Выравнивание альфа-смешения улучшает края текста и изображений (использующих протокол Kitty Graphics Protocol), отображаемых в терминале, за счет альфа-смешения в цветовом пространстве P3 (а не sRGB, как раньше). Пока это доступно только в macOS, но скоро появится в Linux.

В Ghostty 1.1.0 улучшена поддержка редактора методов ввода (IME) на macOS и Linux, теперь ввод CJK (китайский, японский, корейский), мертвых клавиш, эмодзи и шестнадцатеричного кода Unicode стал более надежным и последовательным.

И некоторые другие общие изменения:

  • URL-адреса IPv6 теперь автоматически превращаются в гиперссылки
  • Файловые пути без явного file:// протокола могут быть нажаты
  • Тройной клик и перетаскивание теперь работает, если тройной клик начинается на пустой строке

Другие исправления и улучшения, специфичные для Linux, включают:

  • Панель заголовков теперь автоматически скрывается в полноэкранном режиме (восстанавливается при выходе из полноэкранного режима)
  • Новая gtk-titlebar-hide-when-maximized опция конфигурации
  • Новое gtk-custom-css конфигурация для загрузки пользовательского CSS в элементы GTK темы
  • window-title-font-family настройка конфигурации теперь работает в Linux
  • Декларирует StartupWMClass в файле .desktop для прикрепления дока/таскбара
  • Множественные custom-shader значения теперь поддерживаются (соответствует macOS)
  • Удаление файлов и выделенного текста в Ghostty теперь работает в Linux
  • Ярлык «Открыть в Ghostty» для Nautilus доступен
  • Цвета разделителей меню теперь соответствуют теме системы
  • Исправления дробного масштабирования
  • Масштабирование шрифтов на Wayland теперь использует gtk-xft-dpi
  • ctrl + insert теперь вторичные настройки по умолчанию для копирования/вставки
  • Текст предварительного просмотра вставки теперь моноширинный в GTK4

Более подробную информацию о Ghostty 1.1.0 можно получить на официальном сайте документации.

Установка Ghostty на Ubuntu

Понравилось то, что вы видите?

Установка Ghostty на Ubuntu не так проста, как в других дистрибутивах Linux.

Предварительно собранные официальные двоичные файлы предоставляются только для macOS, а официальные пакеты – для нескольких дистрибутивов Linux (например, Arch и Gentoo). Пользователи других дистрибутивов Linux могут собрать его из исходных текстов или использовать сборки, распространяемые сообществом.

Для Ubuntu инженер-программист Майк Касберг предлагает Ghostty DEB для Ubuntu 24.04 LTS и 24.10 (включая ARM) на GitHub (планируется PPA), а другой способ – Ghostty AppImage от Adithya Ps, не зависящий от дистрибутива.

Зарубин Иван Эксперт по Linux и Windows

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

Похожие статьи

Комментарии (0)