====== WvdS FPC Tools ====== Integrierte Entwicklungsumgebung für Free Pascal / Lazarus in Visual Studio Code. ===== Übersicht ===== WvdS FPC Tools ist ein Extension Pack das drei spezialisierte Extensions zusammenfasst: | Extension | Beschreibung | ^ [[.:solution-manager|FPC Solution Manager]] | Projektmanagement, Build-System, Debugging, Form Designer | ^ [[.:pas2js-studio|FPC PAS2JS Studio]] | pas2js Compiler, Web Form Designer, Live Server | ^ [[.:iss-designer|FPC ISS Designer]] | InnoSetup Integration, Installer Build, Code Signing | ===== Schnellstart ===== - **Installieren:** In VSCode nach ''WvdS FPC Tools'' suchen oder ''wvds.wvds-fpc-tools'' installieren - **Toolchain:** FPC / Lazarus installieren (''C:\Lazarus'' oder ''fpcupdeluxe'') - **Projekt öffnen:** Ordner mit ''.lpi'', ''.lpg'' oder ''package.json'' (pas2js) öffnen - **Bauen:** ''Ctrl+Shift+B'' oder Tree View → Rechtsklick → Build Detaillierte Anleitung: [[.:installation|Installation und Konfiguration]] ===== Unterstützte Projekttypen ===== ==== FPC / Lazarus (Solution Manager) ==== | Typ | Beschreibung | ^ Konsolen-Anwendung | Native CLI-Programme | ^ GUI-Anwendung (LCL) | Desktop-Programme mit Lazarus Component Library | ^ Bibliothek (DLL/SO) | Shared Libraries | ^ Package (.lpk) | Lazarus-Pakete | ^ Projektgruppe (.lpg) | Mehrere Projekte in einem Workspace | ==== pas2js (PAS2JS Studio) ==== | Typ | Beschreibung | ^ VSCode Extension | Pascal-basierte VSCode Extensions | ^ Web-Anwendung | Browser-Anwendungen via pas2js | ^ Web Forms (.wfm) | Visuelle Formulare für Web | ==== InnoSetup (ISS Designer) ==== | Typ | Beschreibung | ^ Installer-Skript (.iss) | Windows-Installer mit InnoSetup | ===== Features ===== ==== Projektmanagement ==== * Tree View mit Projekt-Hierarchie (Gruppen, Projekte, Units, Formulare) * Drag & Drop für Units und Projekte * Multi-Root Workspace Unterstützung * Automatische Projekt-Erkennung (.lpi, .lpg, package.json) ==== Build-System ==== * Build, Rebuild, Clean für einzelne Projekte oder alle * Build-Modi: Debug, Release, Custom * Pre/Post-Build Kommandos * Dependency-Order Build * Inkrementelle Kompilierung ==== Code-Bearbeitung ==== * Syntax Highlighting für Pascal, InnoSetup * Pascal Language Server (pasls) Integration * Code Completion, Signature Help, Go to Definition * Document Symbols, References, Rename * Code Formatting (ptop / jcf) ==== Debugging ==== * Integrierter Debugger (fpdserver / GDB) * Breakpoints, Step In/Out/Over * Variables, Watches, Call Stack * Immediate Window ==== Form Designer ==== * LFM Form Designer (Lazarus-Formulare) * WFM Web Form Designer (pas2js Web Forms) * Toggle Form/Code (F12) * Skin-Auswahl und Grid-Snap ==== Installer ==== * InnoSetup Syntax Highlighting und Completion * Compile & Run direkt aus VSCode * Code Signing Integration * Silent Install Testing ===== Systemanforderungen ===== | Anforderung | Minimum | ^ VS Code | 1.85.0 oder neuer | ^ Betriebssystem | Windows 10/11 (primär), Linux via WSL | ^ Free Pascal | 3.2.2 oder 3.3.1 (trunk) | ^ Lazarus | 3.x (für LCL GUI-Projekte) | ^ pas2js | 2.2.0 (für Web/Extension-Projekte) | ^ InnoSetup | 6.x (für Installer-Projekte, optional) | ^ Node.js | 18+ (für esbuild/VSIX Paketierung) | ===== Dokumentation ===== ==== Benutzer-Dokumentation ==== * [[.:installation|Installation und Konfiguration]] * [[.:solution-manager|FPC Solution Manager]] * [[.:pas2js-studio|FPC PAS2JS Studio]] * [[.:iss-designer|FPC ISS Designer]] * [[.:faq|Häufige Fragen (FAQ)]] ==== Entwickler-Dokumentation ==== * [[..:i:architektur|Architektur-Übersicht]] * [[..:i:build-pipeline|Build-Pipeline]] * [[..:i:umgebung|Entwicklungsumgebung]] * [[..:i:api-controls-navigation|API: Navigation Controls]]