Команда разработчиков эмулятора терминала Ghostty представила версию 1.4.0. Новая версия стала итогом 7 месяцев активной разработки: над ней трудились 172 контрибьютора, сделавших 2 289 коммитов. В этой версии: серьёзное ускорение работы, снижение потребления памяти, полноценная поддержка протокола Kitty и множество других улучшений для всех поддерживаемых платформ.
Ghostty — это быстрый, многофункциональный и кроссплатформенный эмулятор терминала, использующий собственный пользовательский интерфейс и аппаратное ускорение графики. Ghostty построен на libghostty — переносимой встраиваемой библиотеке эмуляции терминала . libghostty лежит в основе всех встроенных терминалов в IDE от JetBrains, и сейчас ведутся работы по замене ядра терминала с libvterm на libghostty в Neovim.
Главные нововведения
1. 100% поддержка Kitty Graphics (с анимацией и относительным позиционированием)
Ghostty стал первым сторонним терминалом (помимо самого Kitty), реализовавшим полную спецификацию протокола графики Kitty.
- Анимация: Теперь анимированные изображения (например, GIF через
kitten icat) воспроизводятся прямо в терминале, а не замирают на первом кадре. Анимация автоматически ставится на паузу, когда окно терминала неактивно. - Относительное позиционирование: Позволяет программам привязывать дочерние изображения к родительским элементам, чтобы они перемещались вместе.
- Производительность: Парсинг графических данных теперь переведен на SIMD, что ускорило передачу крупных изображений примерно в 16 раз (в тестах для 64 МБ данных).
2. Сжатие истории (Scrollback Compression) и снижение расхода памяти
- Прозрачное сжатие: Невидимая часть истории строк теперь сжимается «на лету» в фоновом режиме во время простоя терминала, экономя от 70% до 90% физической памяти для текстовых логов. Распаковка происходит мгновенно при прокрутке или поиске.
- Лимит истории по умолчанию: Благодаря компрессии стандартный лимит буфера прокрутки увеличен с 10 МБ до 50 МБ на один терминал.
- Оптимизация вкладок: Новое пустое окно на macOS теперь потребляет всего около 16 КиБ (против 128 КиБ ранее). Неактивные вкладки теперь сбрасывают ресурсы GPU, что в тестах с 20 скрытыми вкладками снизило потребление памяти с 385 МБ до 18 МБ.
3. Резкий рост производительности и пропускной способности I/O
- Обход ограничений macOS: Ядро macOS искусственно ограничивает размер каждого чтения из pty примерно до 1 КиБ. Ghostty теперь производит чтение в отдельном потоке, увеличивая общую сквозную пропускную способность I/O на 25–55%.
- Парсер VT: Обработка простого ASCII-текста в бенчмарках выросла со 128 МБ/с до 725 МБ/с (в 5.7 раз), а работа с текстом на CJK — в 3.4 раза. Операция
catдля 150-мегабайтного текстового файла на macOS теперь занимает всего 566 мс вместо 1.5 секунд. - Изменение размера: Изменение размеров окна с большими логами (например, 10 000 строк) теперь происходит примерно в 6 раз быстрее.
4. Новый OpenGL-рендерер для Linux и FreeBSD
Приложение для GTK получило полностью переработанный конвейер рендеринга без использования устаревшего GtkGLArea. Рендерер рисует кадры через EGL в отдельном потоке с тройной буферизацией (DMABUF).
- Главный визуальный итог: исправлена размытость текста при дробном масштабировании (например, 125% или 150%) в Linux.
5. Полноценная интеграция с протоколом буфера обмена Kitty (OSC 5522)
Ghostty теперь поддерживает протокол обмена буфера обмена Kitty на macOS и GTK. Это позволяет терминальным приложениям передавать и принимать не только чистый текст, но и изображения, HTML и другие форматы, а также запрашивать доступ к конкретным типам данных в буфере обмена с удобным окном предпросмотра и запросом прав.
6. Улучшения для SSH и утилита ghostty +ssh
Представлен новый удобный CLI-инструмент ghostty +ssh, который автоматически подготавливает удаленный хост (устанавливает terminfo, пробрасывает переменные окружения COLORTERM, и др.) и запускает стандартный TERM_PROGRAMssh. Теперь можно просто настроить алиас:
alias ssh='ghostty +ssh --'
7. Поддержка macOS 27 (Golden Gate)
Добавлена полная совместимость с macOS 27: исправлено отображение вкладок в стиле tabs (macos-titlebar-style = tabs), устранено появление серых плашек поверх тем при использовании кастомного стиля заголовков, а также сохранена полная обратная совместимость вплоть до macOS 13 (Ventura).






