Questa pagina è tradotta dalla documentazione inglese. Comandi, identificatori ed esempi restano invariati. Runtime 7.24.4 · SDK 2.6.7. Testo inglese
Rendering del terminale
Stato: Attuale Ambito: selezione del profilo di terminale della TUI, sostituzioni e confini delle capacità visive Ultima revisione: 2026-10-03 Responsabile: responsabili della TUI di AX Code
AX Code sceglie un profilo di terminale dall’ambiente all’avvio. Il profilo controlla la configurazione del terminale, non la risoluzione del monitor né la nitidezza del carattere.
| Ambiente del terminale | Profilo automatico | Identificazione |
|---|---|---|
| Windows Terminal, incluso Ubuntu in WSL | Avanzato | WT_SESSION non vuoto, senza un TERM_PROGRAM in conflitto |
| GNOME Terminal e altri host VTE | Avanzato | VTE_VERSION decimale positivo, TERM=xterm o xterm-256color, e nessun TERM_PROGRAM in conflitto |
| Ghostty | Avanzato | TERM_PROGRAM=ghostty o TERM=xterm-ghostty |
| Terminal.app di macOS | Compatibile | TERM_PROGRAM=Apple_Terminal |
| Terminali sconosciuti, SSH/mosh, tmux, screen e Zellij | Compatibile | Ripiego conservativo |
Un TERM_PROGRAM esplicito ha la precedenza sui marcatori ereditati del terminale
esterno. Anche i tipi di terminale limitati come dumb, linux e vt100 restano
compatibili. La sola identità Ubuntu o WSL non attiva il profilo avanzato.
Il profilo avanzato usa lo schermo alternativo, un thread di rendering nativo e il rilevamento delle capacità del terminale. Il profilo compatibile usa lo schermo principale senza il thread di rendering nativo. Entrambi attivano l’interazione con il mouse (vedi Cattura del mouse) e la negoziazione del protocollo di tastiera, e puntano a 60 FPS; la frequenza reale dei fotogrammi dipende dal carico e dal terminale.
Windows Terminal mantiene gli effetti visivi a 24 bit in entrambi i profili quando la sua sessione diretta è identificata. Il supporto del colore non implica grafica a pixel né supporto Nerd Font. La modalità avanzata non cambia il carattere, la dimensione del carattere o la scala dello schermo.
Cattura del mouse
AX Code cattura l’input del mouse del terminale per impostazione predefinita, così i controlli dentro la TUI restano cliccabili: i chip di scorciatoia del piè di pagina (Fast-model, Autonomous, Sandbox), le opzioni di finestra di dialogo e di completamento automatico, il clic per il focus, la selezione tramite trascinamento e lo scorrimento con la rotella dentro la TUI. Mentre la cattura è attiva, il terminale consegna il mouse al programma in esecuzione, quindi il menu contestuale del terminale e la selezione nativa del testo non vengono mostrati. Molti terminali li espongono ancora con un modificatore — di solito Maiusc più clic destro, a volte Option o Alt — a seconda del terminale e del fatto che tmux, screen o Zellij stiano in mezzo.
Imposta mouse su false in tui.json per restituire il mouse al terminale:
{
"mouse": false
}
AX_CODE_DISABLE_MOUSE=1 disattiva la cattura indipendentemente da tui.json. Esiste
perché i file tui.json a livello di progetto sono input non attendibile: un repository non
deve poter tenere soppresso il comportamento del mouse del terminale contro la volontà
dell’utente. La variabile si limita a disattivare la cattura; non può mai forzarla.
Rinunciare è un compromesso, non una vincita netta:
- Si recupera: il menu contestuale nativo del terminale, la selezione nativa del testo e copia/incolla. Lo scrollback del terminale gestisce la rotella nel profilo compatibile.
- Si perde: i chip di scorciatoia del piè di pagina, il clic per il focus, le opzioni cliccabili di dialogo e di completamento automatico, la selezione tramite trascinamento e — nel profilo avanzato (schermo alternativo), che non ha scrollback del terminale — lo scorrimento con la rotella dentro la TUI. I controlli da tastiera restano disponibili per quelle azioni.
Mentre la cattura è attiva, il clic destro apre il menu contestuale della TUI invece di quello del terminale: un piccolo menu Copia / Incolla nella posizione del clic. Copia è attivo quando una selezione è sullo schermo, Incolla quando un campo di testo ha il focus — compresi il prompt e i campi dentro le finestre di dialogo. Il menu si chiude con Esc, con qualsiasi tasto, con lo scorrimento o con un clic al di fuori. Quando la cattura è disattivata, è il terminale a gestire il clic.
Sostituire il profilo
Imposta AX_CODE_TUI_ADVANCED_TERMINAL=1 per richiedere la modalità avanzata o 0 per richiedere
la modalità compatibile. Una sostituzione esplicita ha priorità sul rilevamento automatico,
incluse le sessioni remote e multiplexate. Rimuovi la variabile per ripristinare
la selezione automatica. Sono accettati anche true/false, yes/no e on/off.
PowerShell, per la shell corrente e i suoi processi figli:
$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 o Zsh, per un singolo avvio:
AX_CODE_TUI_ADVANCED_TERMINAL=1 ax-code
AX_CODE_TUI_ADVANCED_TERMINAL=0 ax-code
Se i file di avvio della shell esportano la variabile, rimuovi quell’export ed esegui
unset AX_CODE_TUI_ADVANCED_TERMINAL per ripristinare la selezione automatica.
Animazioni a pixel
Le animazioni di apertura e di chiusura usano i pixel solo quando il renderer conferma la grafica Kitty, dimensioni in pixel valide, un TTY locale, lo schermo alternativo e l’assenza di multiplexer. Capacità mancanti o un fallimento della grafica usano il ripiego testuale. La modalità avanzata automatica non aggira questi controlli.
Tutti i fotogrammi delle animazioni a pixel — Digital Code, Foliage e le scene dei punti di riferimento — sono limitati a 1920x1080. Questi fotogrammi si aggiornano su una cadenza di 20 FPS, separata dall’obiettivo di 60 FPS del renderer. Vedi Animazioni di apertura e chiusura della TUI per le anteprime.
Le sessioni di Windows Terminal con supporto Sixel confermato (e senza grafica Kitty)
mostrano un fotogramma statico di splash Sixel, limitato a 640x360 e 256 KiB,
invece del ripiego testuale. AX_CODE_SIXEL_SPLASH=0 lo disattiva; =1 consente
a qualsiasi terminale Sixel di mostrarlo (percorso di test). Lo smontaggio ridipinge la regione dello splash
con lo sfondo dell’overlay, perché Sixel non ha la cancellazione per id di immagine.
Carattere di Windows Terminal
AX Code non può cambiare il carattere del terminale. Le icone di tipo di file (glifi a uso
privato di Nerd Font) vengono rese in Windows Terminal solo con un carattere patchato
installato. Il carattere consigliato è Cascadia Code NF: installalo, poi impostalo
come carattere del profilo in Impostazioni > Profili > Aspetto > Tipo di carattere. Un
suggerimento una tantum nell’app indica questa configurazione agli utenti di Windows Terminal; non
compare quando le icone sono già rese o quando AX_CODE_NERD_FONT=0 rinuncia.