IT Basic - LIHACHTETAN/ClassicUO-BadNewbie-BasicIDE GitHub Wiki
Basic Runtime e IDE — Italiano
Home · BASIC · UO API · A–Z · Examples · Languages
Basic IDE Runtime esegue script in sintassi Basic e collega le chiamate UO.* ai meccanismi di ClassicUO. L’ambiente integrato usa Eclipse Theia con Monaco e un’estensione del linguaggio Basic.
Punto di ingresso
Uno script avviato direttamente deve contenere:
SUB Main()
UO.Print('Basic avviato')
END SUB
All’apertura o alla modifica, Runtime indicizza tutto il testo: SUB, FUNCTION, parametri, dichiarazioni locali e globali, chiamate API, diagnostica e simboli Outline. La posizione di Main e lo scrolling dell’editor non influiscono sull’avvio.
Aree della IDE
- Explorer — file e script selezionato;
- Editor — sorgente Basic;
- Outline —
SUBeFUNCTIONdel file selezionato; - Problems — errori con navigazione alla riga;
- Output / Debug Console — output cronologico;
- API Inspector — documentazione dell’elemento Runtime scelto;
- Variables / Watch / Call Stack — dati del debugger in pausa;
- API Manual — catalogo completo del Runtime.
I pannelli sono ridimensionabili. Un pannello separato o non attivo deve continuare a mostrare e aggiornare i propri dati.
Script paralleli e stato
Più script possono lavorare in modo indipendente. Verde indica running, giallo paused, nero o il colore normale del tema stopped/selezionato. Run, Pause e Stop agiscono sull’istanza scelta in Explorer. Chiudere la finestra IDE non arresta gli script mentre ClassicUO Runtime rimane attivo; alla riapertura lo stato viene sincronizzato.
Comandi Run e Debug
| Funzione | Tasto | Azione |
|---|---|---|
| Run Current Script | F5 |
valida e avvia lo script corrente |
Start Script (SUB Main) / Run Without Debugging |
Ctrl+F5 |
avvia SUB Main() senza stop del debugger |
| Start Debugging | F4 |
avvia SUB Main() sotto debugger |
| Validate | F6 |
controlla la sintassi senza avviare |
| Pause/Resume Current Script | F7 |
pausa/riprende l’istanza scelta |
| Continue | F8 |
continua dopo pausa o breakpoint |
| Toggle Breakpoint | F9 |
attiva/disattiva il breakpoint della riga |
| Step Over | F10 |
esegue l’istruzione corrente |
| Step Into | F11 |
entra nella SUB/FUNCTION chiamata |
| Step Out | Shift+F11 |
esce dalla procedura corrente |
| Stop | Shift+F5 |
arresta l’istanza scelta |
| Restart Debugging | Ctrl+Shift+F5 |
riavvia sotto debugger |
| API Documentation for Symbol | Ctrl+F1 |
apre il Manual sul simbolo |
Stop All Scripts e Pause All Scripts agiscono su tutte le istanze compatibili. Una voce grigia non è applicabile allo stato corrente. I comandi step diventano disponibili quando il debugger è fermo su un’istruzione eseguibile.
Debug passo per passo
La riga realmente in esecuzione viene evidenziata. F10 segue le istruzioni, non le semplici righe visive; F11 entra in una procedura utente e Shift+F11 ritorna al chiamante. locals, globals, watches e frames precisi sono disponibili quando il debugger è fermo. Durante l’esecuzione continua può apparire solo l’ultimo snapshot sicuro.
Assistenza alla scrittura
- il completamento mostra la sintassi completa
UO.*; - un click su un comando mostra la descrizione;
- un doppio click inserisce la forma completa nell’editor;
- Ctrl-hover appare solo tenendo premuto
Ctrl; - i tooltip vanno a capo e restano entro lo schermo.
Reattività del Runtime
Runtime usa cache sorgente preparata, contesti di lavoro separati, yielding cooperativo e quantità limitate di lavoro inviate al thread di gioco. Questo riduce i blocchi dell’interfaccia. Lo script deve comunque includere UO.Wait(...) nei cicli lunghi ed evitare busy loop infiniti.
Salvataggio
- nuovo file senza nome →
Autoload\Scripts; - file aperto dal disco → percorso originale;
- Save All → tutti i documenti modificati;
- prima di Run viene richiesto di salvare il testo non salvato.