Получить AX Code · БесплатноДокументация

Эта страница переведена с английской документации. Команды, идентификаторы и примеры не изменены. Среда выполнения 7.24.4 · SDK 2.6.7. Английский оригинал

Отрисовка терминала

Статус: актуально Область: выбор профиля терминала TUI, переопределения и границы визуальных возможностей Последняя проверка: 2026-10-03 Владелец: сопровождающие TUI AX Code

AX Code выбирает профиль терминала из окружения при запуске. Профиль управляет настройкой терминала, а не разрешением монитора и резкостью шрифта.

Окружение терминала Автоматический профиль Опознание
Windows Terminal, включая Ubuntu в WSL Расширенный Непустой WT_SESSION и нет конфликтующего TERM_PROGRAM
GNOME Terminal и другие хосты VTE Расширенный Положительный десятичный VTE_VERSION, TERM=xterm или xterm-256color и нет конфликтующего TERM_PROGRAM
Ghostty Расширенный TERM_PROGRAM=ghostty или TERM=xterm-ghostty
macOS Terminal.app Совместимый TERM_PROGRAM=Apple_Terminal
Неизвестные терминалы, SSH/mosh, tmux, screen и Zellij Совместимый Консервативный запасной вариант

Явный TERM_PROGRAM важнее унаследованных маркеров внешнего терминала. Ограниченные типы терминала, такие как dumb, linux и vt100, тоже остаются совместимыми. Одной принадлежности к Ubuntu или WSL недостаточно, чтобы включить расширенный профиль.

Расширенный профиль использует альтернативный экран, нативный поток отрисовки и определение возможностей терминала. Совместимый профиль использует основной экран без нативного потока отрисовки. Оба включают взаимодействие с мышью (см. Захват мыши), согласование протокола клавиатуры и цель 60 кадров/с; фактическая частота зависит от нагрузки и терминала.

Windows Terminal сохраняет 24-битные визуальные эффекты в любом профиле, когда опознана его прямая сессия. Поддержка цвета не означает пиксельную графику или поддержку Nerd Font. Расширенный режим не меняет шрифт, размер шрифта и масштаб отображения.

Захват мыши

AX Code по умолчанию захватывает ввод мыши терминала, чтобы элементы управления внутри TUI оставались нажимаемыми: метки сочетаний в подвале (быстрая модель, автономный режим, песочница), варианты диалогов и автодополнения, щелчок для фокуса, выделение перетаскиванием и прокрутка колесом внутри TUI. Пока захват включён, терминал отдаёт мышь работающей программе, поэтому собственное меню правого щелчка терминала и родное выделение текста не показываются. Многие терминалы всё ещё открывают их с модификатором — обычно Shift и правый щелчок, иногда Option или Alt — в зависимости от терминала и от того, стоит ли между ними tmux, screen или Zellij.

Задайте mouse равным false в tui.json, чтобы вернуть мышь терминалу:

{
  "mouse": false
}

AX_CODE_DISABLE_MOUSE=1 отключает захват независимо от tui.json. Он существует, потому что файлы tui.json уровня проекта — недоверенный ввод: репозиторий не должен иметь возможность подавлять собственное поведение мыши терминала против желания пользователя. Переменная только отключает захват; включить его принудительно она не может.

Отказ — это обмен, а не чистый выигрыш:

  • Возвращается: родное меню правого щелчка терминала, родное выделение текста и копирование и вставка. Собственный буфер прокрутки терминала обрабатывает колесо в совместимом профиле.
  • Теряется: метки сочетаний в подвале, щелчок для фокуса, нажимаемые варианты диалога и автодополнения, выделение перетаскиванием и — в расширенном профиле (альтернативный экран, у которого нет буфера прокрутки терминала) — прокрутка колесом внутри TUI. Клавиатурное управление этими действиями остаётся.

Пока захват включён, правый щелчок открывает собственное контекстное меню TUI, а не меню терминала: небольшое меню Копировать / Вставить в позиции щелчка. Копирование доступно, когда на экране есть выделение, вставка — когда в фокусе текстовый ввод, включая запрос и поля внутри диалогов. Меню закрывается по Escape, по любому нажатию клавиши, по прокрутке или по щелчку вне его. Когда захват выключен, щелчок обрабатывает терминал.

Переопределение профиля

Задайте AX_CODE_TUI_ADVANCED_TERMINAL=1, чтобы запросить расширенный режим, или 0, чтобы запросить совместимый режим. Явное переопределение важнее автоматического определения, включая удалённые и мультиплексированные сессии. Уберите переменную, чтобы вернуть автоматический выбор. Также принимаются true/false, yes/no и on/off.

PowerShell, для текущей оболочки и её дочерних процессов:

$env:AX_CODE_TUI_ADVANCED_TERMINAL = "1"
ax-code

# Use compatible mode if startup or rendering has problems.
$env:AX_CODE_TUI_ADVANCED_TERMINAL = "0"
ax-code

# Restore automatic selection.
Remove-Item Env:AX_CODE_TUI_ADVANCED_TERMINAL -ErrorAction SilentlyContinue

Bash или Zsh, для одного запуска:

AX_CODE_TUI_ADVANCED_TERMINAL=1 ax-code
AX_CODE_TUI_ADVANCED_TERMINAL=0 ax-code

Если файлы запуска оболочки экспортируют переменную, уберите этот экспорт и выполните unset AX_CODE_TUI_ADVANCED_TERMINAL, чтобы вернуть автоматический выбор.

Пиксельные анимации

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

Все кадры пиксельной анимации — Digital Code, Foliage и сцены ориентиров — ограничены 1920×1080. Эти кадры обновляются по расписанию 20 кадров/с, отдельно от цели отрисовщика 60 кадров/с. Предпросмотр см. в Анимациях открытия и завершения TUI.

Сессии Windows Terminal с подтверждённой поддержкой Sixel (и без графики Kitty) показывают один статичный кадр заставки Sixel, ограниченный 640×360 и 256 КиБ, вместо текстового запасного варианта. AX_CODE_SIXEL_SPLASH=0 отключает его; =1 позволяет любому терминалу Sixel показать его (путь теста). При разборе область заставки перекрашивается фоном наложения, потому что у Sixel нет удаления по идентификатору изображения.

Шрифт Windows Terminal

AX Code не может сменить шрифт терминала. Значки типов файлов (глифы частного использования Nerd Font) рисуются в Windows Terminal только с установленным пропатченным шрифтом. Рекомендуемый шрифт — Cascadia Code NF: установите его, затем задайте его шрифтом профиля в Параметры > Профили > Оформление > Шрифт. Однократная подсказка в приложении указывает пользователям Windows Terminal на эту настройку; она не показывается, если значки уже рисуются или если AX_CODE_NERD_FONT=0 отказывается.