WvdS VSCode Build

La Build Extension integra Free Pascal Compiler (FPC) e pas2js in VS Code. Permette compilazione, pulizia e formattazione della clausola Uses direttamente dall'editor.

Funzione e scopo

La Build Extension offre:

  • Integrazione FPC - Compilazione Pascal nativa per desktop e server
  • Integrazione pas2js - Transpilazione in JavaScript per applicazioni web
  • Problem Matcher - Gli errori del compilatore vengono visualizzati nel pannello Problems
  • Uses-Formatter - Formattazione automatica delle clausole Uses

Comandi

Comando Scorciatoia Descrizione
WvdS: Build Project Ctrl+Shift+B Compila il progetto corrente
WvdS: Clean Build - Elimina gli artefatti di build
WvdS: Rebuild Project - Clean + Build in un unico passaggio
WvdS: Format Uses Clauses Ctrl+Alt+U Formatta le clausole Uses nel file corrente
WvdS: Remove Unused Units - Rimuove le unit non utilizzate da Uses

Flusso di lavoro Build

Compilare il progetto

  1. Aprite un file Pascal (.pas, .lpr, .dpr)
  2. Premete Ctrl+Shift+B o eseguite WvdS: Build Project
  3. Il compilatore viene eseguito nel Terminal
  4. Gli errori appaiono nel pannello Problems

Tipi di build

Tipo Descrizione Utilizzo
Build Build incrementale, solo unit modificate Sviluppo normale
Clean Elimina tutti i file .o, .ppu, .exe In caso di problemi, prima del release
Rebuild Clean + Build Ricompilazione completa

Selezione del compilatore

L'estensione sceglie automaticamente il compilatore corretto:

Estensione file Compilatore Output
.lpr, .pas (con .lpi) FPC via lazbuild Binario nativo
.dpr, .dpk FPC Binario nativo
.pas (con pas2js.cfg) pas2js JavaScript

Uses-Clause-Formatter

Il formatter organizza e pulisce le clausole Uses.

Funzionalità

  • Ordinamento - Alfabetico, per lunghezza, o nessuno
  • Raggruppamento - Opzionale: RTL, LCL, Unit personalizzate
  • Indentazione - Larghezza di indentazione configurabile
  • Lunghezza riga - A capo automatico al superamento
  • Rimozione inutilizzati - Rimozione delle unit non utilizzate

Esempio

Prima:

uses
  SysUtils,Classes,Forms, Dialogs,
    StdCtrls, Windows,
  MyUnit;

Dopo (alfabetico, 2 spazi, 80 caratteri):

uses
  Classes, Dialogs, Forms, MyUnit, StdCtrls, SysUtils, Windows;

Clic destro in un file Pascal mostra il sottomenu „Uses Clauses“:

  • Format Uses Clauses
  • Remove Unused Units

Impostazioni

Impostazioni Build

{
  "wvds.build.fpcPath": "",
  "wvds.build.pas2jsPath": ""
}
Queste impostazioni vengono ereditate dalla Core Extension se lasciate vuote.

Impostazioni Uses-Formatter

{
  // Ordine di ordinamento
  // "alphabetical" | "lengthAsc" | "lengthDesc" | "none"
  "wvds.usesFormatter.sortOrder": "alphabetical",
 
  // Indentazione (numero di spazi)
  "wvds.usesFormatter.indentSize": 2,
 
  // Lunghezza massima della riga
  "wvds.usesFormatter.maxLineLength": 80,
 
  // Raggruppamento per tipo (RTL, LCL, Custom)
  "wvds.usesFormatter.groupByType": false,
 
  // Rimuovi automaticamente le unit inutilizzate
  "wvds.usesFormatter.removeUnused": false
}

Opzioni di ordinamento nel dettaglio

Opzione Descrizione Esempio
alphabetical Ordinamento A-Z (default) Classes, Dialogs, Forms, SysUtils
lengthAsc Prima le più corte DB, Forms, Classes, SysUtils
lengthDesc Prima le più lunghe SysUtils, Classes, Forms, DB
none Mantieni ordine originale -

Raggruppamento

Con raggruppamento attivato (groupByType: true):

uses
  // RTL
  Classes, SysUtils,
  // LCL
  Forms, StdCtrls,
  // Custom
  MyUnit, AnotherUnit;

Problem Matcher

L'estensione analizza l'output del compilatore e mostra gli errori nel pannello Problems.

Formati supportati

Formato FPC:

myunit.pas(42,10) Error: Identifier not found "TFoo"

Formato pas2js:

myunit.pas(42,10) Error: identifier "TFoo" not found
  • Clic su un errore apre il file nella posizione corrispondente
  • F8 salta all'errore successivo
  • Shift+F8 salta all'errore precedente

Configurazione Build per progetto

Create un build.cfg nella cartella del progetto per impostazioni specifiche:

[build]
compiler=fpc
target=windows-x64
mode=debug
 
[debug]
optimizations=off
symbols=on
assertions=on
 
[release]
optimizations=3
symbols=off
assertions=off

Opzioni disponibili

Opzione Valori Descrizione
compiler fpc, pas2js, lazbuild Compilatore da utilizzare
target windows-x64, linux-x64, web, … Piattaforma di destinazione
mode debug, release Modalità di build
optimizations off, 1, 2, 3 Livello di ottimizzazione
symbols on, off Genera simboli di debug
assertions on, off Attiva le assertion

Scorciatoie da tastiera

Azione Windows/Linux macOS
Build Project Ctrl+Shift+B Cmd+Shift+B
Format Uses Ctrl+Alt+U Cmd+Alt+U

Risoluzione dei problemi

"Compiler not found"

Causa: FPC/pas2js non configurato.

Soluzione:

  1. Aprite WvdS: Toolchain Configuration…
  2. Configurate il percorso del compilatore
  3. In alternativa: impostate wvds.build.fpcPath in settings.json

Gli errori non vengono visualizzati nel pannello Problems

Causa: L'output del compilatore differisce dal formato atteso.

Soluzione:

  1. Controllate l'output del Terminal per errori
  2. Assicuratevi che la versione del compilatore sia compatibile
  3. Segnalate il problema su GitHub

Uses-Formatter non cambia nulla

Causa: Nessuna clausola Uses trovata o file non supportato.

Soluzione:

  1. Assicuratevi che il file sia un .pas, .pp, .lpr, .dpr o .inc
  2. Verificate che sia presente una clausola Uses
  3. Controllate le impostazioni

Dettagli tecnici

Proprietà Valore
Extension ID wvds.wvds-vscode-build
Attivazione onCommand, onLanguage:pascal
Dipendenze wvds-vscode-core
Min. VS Code 1.85.0

Vedere anche

Zuletzt geändert: il 29/01/2026 alle 22:27