Cette page est traduite de la documentation anglaise. Les commandes, identifiants et exemples sont inchangés. Runtime 7.24.4 · SDK 2.6.7. Source anglaise
Rendu du terminal
Statut : actuel Portée : choix du profil de terminal du TUI, forçages et limites de capacité visuelle Dernière revue : 2026-10-03 Responsable : mainteneurs du TUI d’AX Code
AX Code choisit un profil de terminal d’après l’environnement au démarrage. Le profil commande la mise en place du terminal, pas la résolution de l’écran ni la netteté de la police.
| Environnement de terminal | Profil automatique | Identification |
|---|---|---|
| Windows Terminal, y compris Ubuntu dans WSL | Avancé | WT_SESSION non vide, sans TERM_PROGRAM en conflit |
| GNOME Terminal et les autres hôtes VTE | Avancé | VTE_VERSION décimal positif, TERM=xterm ou xterm-256color, et aucun TERM_PROGRAM en conflit |
| Ghostty | Avancé | TERM_PROGRAM=ghostty ou TERM=xterm-ghostty |
| Terminal.app de macOS | Compatible | TERM_PROGRAM=Apple_Terminal |
| Terminaux inconnus, SSH/mosh, tmux, screen et Zellij | Compatible | Repli conservateur |
Un TERM_PROGRAM explicite l’emporte sur les marqueurs hérités du terminal extérieur. Les types de terminaux limités tels que dumb, linux et vt100 restent aussi compatibles. L’identité Ubuntu ou WSL seule n’active pas le profil avancé.
Le profil avancé utilise l’écran alternatif, un fil de rendu natif et la détection des capacités du terminal. Le profil compatible utilise l’écran principal, sans le fil de rendu natif. Les deux activent l’interaction souris (voir Capture de la souris) et la négociation du protocole clavier, et visent 60 FPS ; le débit d’images réel dépend de la charge et du terminal.
Windows Terminal conserve les effets visuels 24 bits dans les deux profils lorsque sa session directe est identifiée. La prise en charge des couleurs n’implique ni graphismes en pixels ni prise en charge Nerd Font. Le mode avancé ne change ni la police, ni sa taille, ni la mise à l’échelle de l’affichage.
Capture de la souris
AX Code capture l’entrée souris du terminal par défaut, afin que les contrôles du TUI restent cliquables : les pastilles de raccourci du pied (Modèle rapide, Autonome, Bac à sable), les options de dialogue et de complétion automatique, le clic pour donner le focus, la sélection par glisser et le défilement à la molette dans le TUI. Tant que la capture est active, le terminal remet la souris au programme en cours, donc le menu contextuel propre au terminal et la sélection de texte native ne s’affichent pas. Beaucoup de terminaux les exposent encore avec un modificateur — en général Shift plus clic droit, parfois Option ou Alt — selon le terminal et selon que tmux, screen ou Zellij se trouve entre les deux.
Réglez mouse sur false dans tui.json pour rendre la souris au terminal :
{
"mouse": false
}
AX_CODE_DISABLE_MOUSE=1 désactive la capture quelle que soit la valeur de tui.json. Cette variable existe parce que les fichiers tui.json au niveau du projet sont une entrée non fiable : un dépôt ne doit pas pouvoir maintenir le comportement souris propre au terminal en opposition au souhait de l’utilisateur. La variable ne fait que désactiver la capture ; elle ne peut jamais la forcer.
Renoncer à la capture est un compromis, pas un gain pur :
- Rendu : le menu contextuel natif du terminal, la sélection de texte native, et copier/coller. L’historique de défilement propre au terminal gère la molette dans le profil compatible.
- Perdu : les pastilles de raccourci du pied, le clic pour le focus, les options cliquables de dialogue et de complétion automatique, la sélection par glisser, et — dans le profil avancé (écran alternatif), qui n’a pas d’historique de défilement du terminal — le défilement à la molette dans le TUI. Les contrôles clavier restent disponibles pour ces actions.
Tant que la capture est active, le clic droit ouvre le menu contextuel propre au TUI plutôt que celui du terminal : un petit menu Copier / Coller à l’endroit du clic. Copier est disponible lorsqu’une sélection est à l’écran, Coller lorsqu’un champ de texte a le focus — y compris l’invite et les champs à l’intérieur des dialogues. Le menu se ferme sur Escape, sur toute frappe, sur un défilement, ou sur un clic en dehors. Une fois la capture coupée, le terminal traite le clic lui-même.
Forcer le profil
Réglez AX_CODE_TUI_ADVANCED_TERMINAL=1 pour demander le mode avancé ou 0 pour demander le mode compatible. Un forçage explicite a priorité sur la détection automatique, y compris pour les sessions distantes et multiplexées. Retirez la variable pour rétablir le choix automatique. true/false, yes/no et on/off sont aussi acceptés.
PowerShell, pour le shell courant et ses processus enfants :
$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 ou Zsh, pour un lancement unique :
AX_CODE_TUI_ADVANCED_TERMINAL=1 ax-code
AX_CODE_TUI_ADVANCED_TERMINAL=0 ax-code
Si les fichiers de démarrage de votre shell exportent la variable, retirez cet export et lancez unset AX_CODE_TUI_ADVANCED_TERMINAL pour rétablir le choix automatique.
Animations en pixels
Les animations d’ouverture et de fin n’utilisent des pixels que lorsque le moteur de rendu confirme les graphismes Kitty, des dimensions en pixels valides, un TTY local, l’écran alternatif et l’absence de multiplexeur. Des capacités manquantes ou un échec graphique utilisent le repli texte. Le mode avancé automatique ne contourne pas ces contrôles.
Toutes les images d’animation en pixels — Digital Code, Foliage et les scènes de repères — sont bornées à 1920x1080. Ces images d’animation se mettent à jour sur un rythme de 20 FPS, séparément de la cible de 60 FPS du moteur de rendu. Voir Animations d’ouverture et de fin du TUI pour les aperçus.
Les sessions Windows Terminal avec une prise en charge Sixel confirmée (et sans graphismes Kitty) affichent une image d’accueil Sixel statique, bornée à 640x360 et 256 KiB, à la place du repli texte. AX_CODE_SIXEL_SPLASH=0 la désactive ; =1 permet à n’importe quel terminal Sixel de l’afficher (chemin de test). Le démontage repeint la zone d’accueil avec le fond de la superposition, car Sixel n’a pas de suppression par identifiant d’image.
Police de Windows Terminal
AX Code ne peut pas changer la police du terminal. Les icônes de type de fichier (glyphes d’usage privé Nerd Font) ne s’affichent dans Windows Terminal qu’avec une police patchée installée. La police recommandée est Cascadia Code NF : installez-la, puis définissez-la comme police du profil sous Paramètres > Profils > Apparence > Police. Une indication unique dans l’application oriente les utilisateurs de Windows Terminal vers cette mise en place ; elle ne s’affiche jamais lorsque les icônes se rendent déjà, ni lorsque AX_CODE_NERD_FONT=0 la refuse.