С выходом Ghostty 1.3 я теперь сосредоточен на завершении C API libghostty (API Zig уже завершено). Я только что добавил основу для отображения полного состояния терминала и форматирования его в виде обычного текста, VT или HTML. Это все просто написание совместимых с C ABI API для уже существующих и хорошо зарекомендовавших себя в реальном мире API Zig. Например, API форматирования — это то, как работает наша функция копирования/вставки (HTML-формат является источником правды для богатого текстового копирования Ghostty 1.3). И, конечно, API терминала — это буквально основной эмулятор терминала Ghostty! Основной API, который мне нужно сделать следующим, это API "состояния рендеринга". Форматеры предназначены для редких снимков состояния в определенный момент времени; они не особенно производительны. Состояние рендеринга — это API с состоянием для построения высокопроизводительных циклов рендеринга, и именно на нем построен рендерер GPU Ghostty. Скоро будет...