====== WvdS VSCode Core ======
La Core Extension costituisce le fondamenta della suite WvdS FPC RAD Studio. Fornisce servizi centrali utilizzati da tutte le altre estensioni.
===== Funzione e scopo =====
La Core Extension è **obbligatoria** per tutte le altre estensioni WvdS. Offre:
* **Gestione toolchain** - Gestione centralizzata di tutti i percorsi dei compilatori
* **Rilevamento automatico** - Ricerca automatica degli strumenti installati
* **Servizi condivisi** - Servizi comuni per logging, configurazione, RPC
* **Integrazione WSL** - Cross-compilation sotto Windows
===== Comandi =====
^ Comando ^ Scorciatoia ^ Descrizione ^
| ''WVDS: Toolchain Configuration...'' | - | Apre il dialogo di configurazione toolchain |
| ''WVDS: Show Log'' | - | Mostra il WvdS Output Channel |
| ''WVDS: Clear Log'' | - | Cancella il contenuto del log |
| ''WVDS: Show Version Info'' | - | Mostra informazioni sulla versione di tutti i componenti |
| ''WVDS: Hello'' | - | Comando di test per verificare l'installazione |
===== Configurazione della toolchain =====
==== Il dialogo di configurazione ====
Il dialogo mostra tutti gli strumenti supportati in una tabella chiara:
{{ :de:int:vsce:fpc:p:toolchain-dialog.png?600 |Dialogo Toolchain}}
^ Colonna ^ Significato ^
| Tool | Nome dello strumento |
| Status | Verde = Trovato, Rosso = Non trovato, Giallo = Versione obsoleta |
| Path | Percorso attuale al file eseguibile |
| Version | Versione rilevata |
| Actions | Pulsanti: Browse, Auto-Detect, Clear |
==== Rilevamento automatico ====
Il rilevamento automatico cerca nei percorsi di installazione tipici:
**Windows:**
* ''%LAZARUS%\fpc\*''
* ''%PROGRAMFILES%\Free Pascal\*''
* ''%LOCALAPPDATA%\Programs\FPC\*''
* Variabile d'ambiente PATH
**Linux:**
* ''/usr/lib/fpc/*''
* ''/usr/local/lib/fpc/*''
* ''~/.fpc/*''
* Variabile d'ambiente PATH
**macOS:**
* ''/usr/local/lib/fpc/*''
* ''/opt/homebrew/lib/fpc/*''
* Variabile d'ambiente PATH
==== Strumenti supportati ====
^ Strumento ^ File ^ Utilizzo ^
| Free Pascal Compiler | fpc / fpc.exe | Compilazione Pascal nativa |
| pas2js | pas2js / pas2js.exe | Transpilazione Pascal-to-JavaScript |
| lazbuild | lazbuild / lazbuild.exe | Compilare progetti Lazarus senza IDE |
| Inno Setup | ISCC.exe | Creare installer Windows |
| GNU make | make / make.exe | Eseguire Makefile |
===== Impostazioni =====
Tutte le impostazioni iniziano con ''wvds.toolchain.'' o ''wvds.core.'':
==== Impostazioni toolchain ====
{
// Percorsi dei compilatori
"wvds.toolchain.fpcPath": "",
"wvds.toolchain.pas2jsPath": "",
"wvds.toolchain.lazbuildPath": "",
"wvds.toolchain.innoSetupPath": "",
"wvds.toolchain.makePath": "",
// Configurazione WSL (solo Windows)
"wvds.toolchain.wslEnabled": false,
"wvds.toolchain.wslDistribution": ""
}
==== Impostazioni Core ====
{
// Livello di log: debug, info, warn, error
"wvds.core.logLevel": "info"
}
^ Livello log ^ Descrizione ^
| debug | Tutti i messaggi, incluse informazioni di debug |
| info | Informazioni, avvisi, errori |
| warn | Solo avvisi ed errori |
| error | Solo errori |
===== Logging =====
La Core Extension fornisce un servizio di logging centralizzato.
==== Output Channel ====
Tutte le estensioni WvdS scrivono nell'Output Channel condiviso "WvdS".
Apertura:
- ''View'' -> ''Output''
- Nel dropdown selezionate "WvdS"
- Oppure: eseguite ''WVDS: Show Log''
==== Formato del log ====
[2024-01-15 14:30:22] [INFO] Toolchain: FPC detected at %LAZARUS%\fpc\3.2.2\bin\i386-win32\fpc.exe
[2024-01-15 14:30:22] [INFO] Toolchain: Version 3.2.2
[2024-01-15 14:30:23] [WARN] Toolchain: pas2js not found in PATH
I percorsi visualizzati corrispondono ai valori risolti del vostro ambiente locale.
===== Integrazione WSL =====
Su Windows, l'integrazione WSL consente la cross-compilation per Linux.
==== Prerequisiti ====
- Windows 10/11 con WSL 2
- Una distribuzione Linux installata (es. Ubuntu)
- FPC installato nell'ambiente WSL
==== Configurazione ====
- Installate FPC in WSL:
sudo apt update
sudo apt install fpc
- Attivate WSL nelle impostazioni:
{
"wvds.toolchain.wslEnabled": true,
"wvds.toolchain.wslDistribution": "Ubuntu-22.04"
}
- Riavviate VS Code
==== Utilizzo ====
Con WSL attivato potete:
* Creare binari Linux sotto Windows
* Utilizzare unit specifiche per Linux
* Generare entrambi i target (Windows + Linux) da un progetto
===== API per sviluppatori di estensioni =====
Altre estensioni possono utilizzare i servizi Core. Vedere [[..:i:core-api|Riferimento API Core]] per i dettagli.
===== Risoluzione dei problemi =====
==== L'estensione non viene attivata ====
**Sintomo:** "WVDS: Hello" non mostra alcun output.
**Soluzione:**
- Controllate la VS Code Developer Console (''Help'' -> ''Toggle Developer Tools'')
- Cercate messaggi di errore con "wvds"
- Assicuratevi che VS Code sia >= 1.85.0
==== Il dialogo toolchain non si apre ====
**Sintomo:** Il comando non mostra alcuna reazione.
**Soluzione:**
- Verificate se la Core Extension è attivata
- In Extensions: cercate "WvdS Core", controllate lo stato
- Disattivate e riattivate l'estensione
==== Il rilevamento automatico non trova nulla ====
**Sintomo:** Tutti gli strumenti rimangono contrassegnati in rosso.
**Soluzione:**
- Verificate se gli strumenti sono effettivamente installati
- Assicuratevi che i percorsi siano leggibili
- Configurate i percorsi manualmente
===== Dettagli tecnici =====
^ Proprietà ^ Valore ^
| Extension ID | wvds.wvds-vscode-core |
| Attivazione | onStartupFinished |
| Dipendenze | Nessuna |
| Min. VS Code | 1.85.0 |
===== Vedere anche =====
* [[.:installation|Installazione e configurazione]]
* [[.:build|Build Extension]]
* [[.:projects|Projects Extension]]
* [[..:i:core-api|Core API per sviluppatori]] (Interno)