Что это такое?
Go-библиотека для работы с виртуальными терминалами через биндинги к libghostty-vt.
Это Go-биндинги к библиотеке libghostty-vt, которая реализует эмуляцию терминала с поддержкой VT-последовательности. Проект позволяет создавать виртуальные терминалы, обрабатывать форматирование (жирный, цветной текст), форматировать вывод в plain text и...
Для Go-разработчиков, создающих CLI-утилиты, SSH-клиенты, веб-терминалы или инструменты для тестирования терминального вывода.
Разработчикам на Go сложно эмулировать терминальное поведение, обрабатывать escape-последовательности и форматировать вывод — приходится писать сложный парсинг или использовать тяжёлые библиотеки.
Проект предоставляет Go-обёртку вокруг библиотеки libghostty-vt на C++. Через cgo создаётся виртуальный терминал, в который можно передавать VT-данные, а затем получать отформатированный текст. Библиотека умеет статически линковаться, что упрощает кросс-компиляцию и распространение.
Это Go-биндинги к библиотеке libghostty-vt, которая реализует эмуляцию терминала с поддержкой VT-последовательности. Проект позволяет создавать виртуальные терминалы, обрабатывать форматирование (жирный, цветной текст), форматировать вывод в plain text и настраивать обработчики событий (звонок, изменение заголовка).
Проект создан Mitchell Hashimoto — известным разработчиком Vagrant, Packer и других инфраструктурных инструментов. Библиотека использует Zig и CMake для автоматической сборки зависимостей при разработке.
Стоит пробовать, если вам нужна эмуляция терминала в Go-проекте и вы готовы к нестабильному API. Проект сыроват, но основан на стабильной C++-библиотеке и имеет потенциал.
Проект новый (14 звёзд, 1 форк), автор явно предупреждает о нестабильном API. Активность в issues нулевая, что может говорить либо о сырости, либо об отсутствии пользователей.
Карточка собрана по данным GitHub, README и структуре репозитория. Это не официальная документация проекта.
Go-библиотека для работы с виртуальными терминалами через биндинги к libghostty-vt.
Для Go-разработчиков, которым нужно эмулировать терминал, тестировать CLI-вывод или создавать веб-терминалы.
Если проект подходит под ваш сценарий, можем помочь с установкой, интеграцией, доработкой или аккуратным форком под вашу инфраструктуру.