vscode-alphabasic
AlphaBASIC — Estensione VS Code
Supporto completo per sorgenti AlphaBASIC / AlphaBASIC Plus in Visual Studio Code.
Syntax highlighting, compilazione integrata, diagnostica errori inline e avvio programmi — senza uscire dall'editor.
Indice
- Funzionalità
- Installazione
- Configurazione iniziale
- Uso
- Scorciatoie da tastiera
- Diagnostica errori
- Sviluppo e build
- Struttura del progetto
- Note sui sorgenti legacy
Funzionalità
🎨 Syntax Highlighting
Colorazione sintattica completa per file .BAS, .BP, .ROU, .MAP, .OPC, .HEL e .RID:
🔨 Compilazione integrata
- Avvia
compil.exe(o equivalente) direttamente da VS Code - Salvataggio automatico prima della compilazione
- Output completo nel pannello AlphaBASIC (Output channel)
- Pulsanti ⚙ e ▶ nella toolbar del titolo dell'editor
🐛 Diagnostica inline
Gli errori del compilatore appaiono come sottolineature rosse direttamente nelle righe incriminate del sorgente, con il messaggio visibile al passaggio del mouse. Nessun bisogno di cercare l'errore nell'output.
▶ Esecuzione programmi
Avvia il file .RUN corrispondente nel terminale integrato di VS Code, usando il runtime AlphaMicro/A-Shell configurato. Se il .RUN non esiste, propone di compilare prima.
📊 Status bar
Indicatore in basso a sinistra con lo stato corrente: compilazione in corso, ✓ OK, ✗ Errore.
Installazione
Metodo 1 — Da file .vsix (consigliato)
Scaricare o generare il pacchetto (vedi Sviluppo e build), poi:
Da VS Code:
Ctrl+Shift+P → Extensions: Install from VSIX...
Da terminale:
code --install-extension vscode-alphabasic-0.1.0.vsix
Metodo 2 — Copia diretta (senza packaging)
# 1. Clonare / scaricare il repository # 2. Installare dipendenze e compilare npm install npm run compile # 3. Copiare la cartella nelle estensioni VS Code # Windows: xcopy /E /I . "%USERPROFILE%\.vscode\extensions\vscode-alphabasic-0.1.0" # 4. Riavviare VS Code
Metodo 3 — Modalità sviluppo (per test e debug)
Aprire la cartella del progetto in VS Code e premere F5. Si apre un'istanza Extension Development Host con l'estensione attiva.
Configurazione iniziale
Al primo utilizzo impostare almeno i percorsi del compilatore e del runtime.
Aprire le impostazioni: Ctrl+, → cerca alphabasic
Esempio settings.json:
{
"alphabasic.compilerPath": "C:\\AlphaMicro\\bin\\compil.exe",
"alphabasic.compilerSwitches": ["-a", "-x2", "-i"],
"alphabasic.runtimePath": "C:\\AlphaMicro\\bin\\ashw32.exe"
}Nota: i percorsi al compilatore e al runtime dipendono dall'installazione specifica di AlphaMicro / A-Shell sul sistema in uso. Se il compilatore viene avviato tramite emulatore AMOS, adattare
compilerPathdi conseguenza.
Uso
Compilare un sorgente
- Aprire un file
.BAS,.BP,.ROU,.MAP,.OPC,.HELo.RIDin VS Code. - Premere
Ctrl+Alt+Boppure usare il pulsante ⚙ nella toolbar. - L'output del compilatore appare nel pannello Output → AlphaBASIC.
- Gli errori vengono evidenziati inline nell'editor.
Eseguire un programma
- Compilare prima il sorgente (deve esistere un file
.RUNcorrispondente). - Premere
Ctrl+F5oppure usare il pulsante ▶ nella toolbar. - Il programma viene avviato nel Terminale integrato di VS Code.
Include file
Le righe che iniziano con ++INCLUDE xxx.yyy vengono evidenziate e il percorso del file incluso diventa cliccabile per aprirlo direttamente.
Navigazione CALL → etichetta
Su una chiamata come CALL PULISCIVIDEO, cliccando (o usando Go to Definition) sul nome routine il cursore salta all'etichetta PULISCIVIDEO: nello stesso file (.BAS, .BP, .ROU, .MAP, .OPC, .HEL, .RID).
Compilare ed eseguire in un solo passo
Premere F5 — compila e, se la compilazione riesce, avvia automaticamente il programma.
Scorciatoie da tastiera
Le scorciatoie sono attive solo quando è aperto un file AlphaBASIC, per non interferire con altri linguaggi.
I comandi sono disponibili anche da:
- Palette comandi (
Ctrl+Shift+P) → cercaAlphaBASIC - Menu contestuale (tasto destro nell'editor)
- Toolbar del titolo dell'editor (icone ⚙ ▶)
Diagnostica errori
L'estensione analizza l'output del compilatore e riconosce automaticamente cinque formati di errore comuni:
Se il compilatore produce un formato non riconosciuto, aprire una issue allegando un esempio di output oppure adattare la funzione parseDiagnostics in src/extension.ts.
Sviluppo e build
Prerequisiti
- Node.js ≥ 18
- Visual Studio Code ≥ 1.85
Installare dipendenze e compilare
npm install npm run compile
Modalità watch (ricompila automaticamente)
npm run watch
Generare il pacchetto .vsix
npm run package
# Output: vscode-alphabasic-0.1.0.vsixTestare l'estensione in live
Aprire la cartella in VS Code → F5 → si apre un Extension Development Host.
Struttura del progetto
vscode-alphabasic/
├─ src/
│ └─ extension.ts # Logica principale: compile, run, diagnostica
├─ syntaxes/
│ └─ alphabasic.tmLanguage.json # Grammar TextMate per syntax highlighting
├─ out/
│ └─ extension.js # Compilato (generato da tsc, non modificare)
├─ .vscode/
│ ├─ launch.json # Configurazione debug estensione (F5)
│ └─ tasks.json # Task build per lo sviluppo dell'estensione
├─ language-configuration.json # Bracket matching, commenti, word pattern
├─ package.json # Manifest VS Code
└─ tsconfig.json
Note sui sorgenti legacy
Questa estensione è progettata per non alterare i sorgenti AlphaBASIC esistenti:
- ❌ Non riformatta automaticamente i file
.BAS/.BP - ❌ Non modifica nomi di variabili, etichette o numeri di riga
- ✅ Preserva terminatori riga CRLF
- ✅ Preserva encoding windows-1252 / latin-1
- ✅ Non elimina file
.RUN,.LIT,.CMD,.DO,.MAP,.LST
Licenza
MIT
Per il codice sorgente e gli altri progetti visita il profilo GitHub di rsodvd79 .