Представлен публике публичный демо-проект Ghostling — минималистичный терминал на основе libghostty

2 мин
Представлен публике публичный демо-проект Ghostling — минималистичный терминал на основе libghostty

Команда проекта Ghostty (разрабатывает эмулятор терминала с GPU-ускорением для отрисовки контента) представила открытый демо-проект Ghostling — минималистичный терминал на основе libghostty.

«Ghostling — это демонстрационный проект, призванный показать минимальный функциональный терминал, построенный на основе C api libghostty в одном файле C». — пояснили арзрабочтики решения.

В проекте используется Raylib для работы с окнами и рендеринга. Проект однопоточный (хотя libghostty-vt поддерживает многопоточность) и использует 2D-графический рендерер вместо прямого рендерера GPU, как главный графический оболочку Ghostty. Это сделано для демонстрации гибкости libghostty и того, как его можно использовать в различных контекстах.

«Предупреждение: терминал Ghostling не предназначен для повседневного использования в качестве полноценного терминала. Это минимальный жизнеспособный терминал, основанный на libghostty. В дополнение к этого, поскольку это, по сути, презентация, я не проверял тщательно каждое место на корректность, и это C, так что вы предупреждены», — уточнил один из разработчиков Ghostling.

Libghostty — это встраиваемая библиотека, извлечённая из ядра Ghostty, предоставляющая api на C и Zig, за счёт чему любое приложение может встраивать корректную и быструю эмуляцию терминала.

Инициатива Ghostling использует libghostty-vt, библиотеку без зависимостей (даже без libc), которая обрабатывает парсинг последовательности VT, управление состоянием терминала (положение курсора, стили, переформатирование текста, прокрутка и управление состоянием рендерера. Эта библиотека не содержит кода отрисовки или оконного отображения; потребитель (в данном случае Ghostling) предоставляет свой собственный исходник для этих действий. Основная логика в проекте извлечена непосредственно из Ghostty и наследует всё его преимущества: полная сопровождение эмуляции терминала, SIMD-оптимизированный парсинг, поддержка Unicode, высокооптимизированное использование памяти.

Особенности проекта:

  • модификация размера с переформатированием текста;

  • полная поддержка 24-битного цвета и 256-цветной палитры;

  • разные стили текста;

  • обработка Unicode и multi-codepoint grapheme (без изменения формы или слоёв);

  • ввод с клавиатуры с поддержкой модификаторов (Shift, Ctrl, Alt, Super);

  • сопровождение протокола клавиатуры Kitty;

  • отслеживание мыши (режимы X10, обычный, клавиша и любое событие);

  • форматы отчётов мыши (SGR, URxvt, UTF8, X10);

  • поддержка колёсика мыши (прокрутка назад или переадресация в приложения);

  • полоса прокрутки с перетаскиванием мыши для прокрутки.

В будущем авторы проекта планируют добавить поддержку протокола графики Kitty, поддержку буфера обмена OSC и настройки заголовков OSC.

Читают сейчас

4 часа назад

Anthropic начнут проектировать чипы для Claude

Anthropic начала формировать собственное направление по проектированию процессоров для Claude. В свежей вакансии Research Engineer, Chip Design RL организация прямо пишет, что ищет инженера, который н

37 процентов машиностроителей фокусируются на ERP и ИБ

5 часов назад

37 процентов машиностроителей фокусируются на ERP и ИБ

К2Тех провел комплексное исследование цифровизации машиностроительной отрасли. Оно объединило результаты опроса 150 респондентов и 15 глубинных интервью с представителями ключевых сегментов отрасли: а

Хакатоны августа 2026

6 часов назад

Хакатоны августа 2026

Августовский версия: собрали для вас 8 крутых соревнований — от ML-баттлов с 7,2 млн ₽ до офлайн-CTF без интернета и инженерных хакатонов по CFD-моделированию. Успейте зарегистрироваться — дедлайны ск

C 4 сентября Google Assistant перестанет функционировать на смартфонах и планшетах Android, его заменит Gemini

7 часов назад

C 4 сентября Google Assistant перестанет функционировать на смартфонах и планшетах Android, его заменит Gemini

Голосовой помощник Google Assistant перестанет функционировать на смартфонах и планшетах под управлением Android с 4 сентября 2026 года, пишет 9to5Google со ссылкой на сообщение от Google. Американска

«Сбер» расширит программу амбассадоров в вузах до 50 университетов в 24 городах России

7 часов назад

«Сбер» расширит программу амбассадоров в вузах до 50 университетов в 24 городах России

«Сбер» расширит программу амбассадоров в вузах. В новом сезоне к проекту присоединятся 50 университетов из 24 городов России. Старт программы запланирован на октябрь. Как сообщили в компании, от каждо