Die VS-Code-Extension bringt vollwertigen Editor-Support für die
CodeCharter-DSL mit. Wenn Sie eigene .ccr-Regeln schreiben, erhalten Sie
Syntax-Highlighting, Snippets und Autovervollständigung der Schema-Properties.
Installation
Die Extension setzt VS Code 1.85 oder neuer voraus. Für den Download aus dem Portal benötigen Sie ein angemeldetes Konto mit aktivem Abonnement.
- Laden Sie
codecharter-X.Y.Z.vsixaus den Portal-Downloads herunter. - In VS Code: Kommandopalette → "Extensions: Install from VSIX..." → die heruntergeladene Datei auswählen.
Hinweis: VS Code zeigt bei der VSIX-Installation einen Sicherheitshinweis zu einem nicht verifizierten Publisher. Das ist erwartet, da die Extension nicht über den Marketplace kommt. Bestätigen Sie den Hinweis und fahren Sie fort.
Alternativ per CLI:
code --install-extension codecharter-X.Y.Z.vsix
Der Windows-Installer bietet das als vorausgewählte Setup-Option an, wenn er eine VS-Code-Installation erkennt.
Die Extension benötigt die CodeCharter-CLI
für alle Sprachfeatures: Der Language Server wird von der CLI selbst
bereitgestellt. Wird keine CLI gefunden, zeigt die Extension beim Aktivieren
einen Fehler, und Autovervollständigung und Validierung funktionieren nicht.
Die CLI wird automatisch im PATH gesucht (ausführbare Dateien codecharter,
CodeCharter.Cli oder CodeCharter.Cli.exe) oder über codecharter.serverPath
konfiguriert.
Features
- Syntax-Highlighting für
.ccr-Files mit eigenem Tokenizer. - Snippets für die typischen Regel-Skelette.
- Autovervollständigung der Schema-Properties (
TypeModel,MethodModelund Co.) über einen Language Server, den die CodeCharter-CLI bereitstellt. - Inline-Validierung der Regel-Syntax. Tippfehler in Property-Namen markiert der Editor sofort.
- Spec-Tests mit CodeLens-Aktionen: "Run spec" und "Scaffold spec"
erscheinen auf
.ccr- und.spec.md-Dateien; fehlgeschlagene Fälle landen im Problems-Panel.
Wenn Ihre codecharter.yml Portal-Profile deklariert, führt die Extension beim
Aktivieren codecharter restore aus, zeigt das aktive Regel-Set in der
Statusleiste an und warnt, wenn codecharter.lock.json neuer ist als der
Regel-Cache.
Die Extension nimmt außerdem Regel-Entwürfe aus dem Portal entgegen: In
VSCode öffnen im Regel-Editor des Portals holt den aktuellen Entwurf nach
VS Code, und CodeCharter: Push to portal spielt ihn als Entwurf zurück. Den
vollständigen Ablauf beschreibt
Regeln in VS Code bearbeiten.
Befehle in der Kommandopalette
CodeCharter: Validate current rule fileCodeCharter: Analyze workspace (.sln/.csproj)CodeCharter: Test rule specCodeCharter: Test all specsCodeCharter: Scaffold spec for current ruleCodeCharter: Restart language serverCodeCharter: Show language server output
Analyze workspace startet die CodeCharter-CLI auf der Solution oder dem
Projekt im VS Code Terminal. Die Findings erscheinen dort als
Konsolen-Output.
Konfiguration
Settings unter codecharter.* in den VS Code Einstellungen:
| Setting | Default | Beschreibung |
|---|---|---|
codecharter.serverPath |
leer | Pfad zur CodeCharter-CLI. Leer = automatische Erkennung aus dem PATH. Unterstützt ${workspaceFolder} und ${userHome}. |
codecharter.analyze.rulesDirectory |
leer | Regel-Verzeichnis für Analyze workspace. Leer = Standardauflösung der CLI: ./rules im Workspace, sonst das mit der CLI ausgelieferte Regel-Set. |
codecharter.trace.server |
off |
LSP-Kommunikation protokollieren (off, messages, verbose). |
codecharter.portalBaseUrl |
https://codecharter.tools |
Portal-Adresse für die Entwurfs-Übergabe, siehe Regeln in VS Code bearbeiten. |
Andere Editoren
Der Language Server ist nicht an VS Code gebunden. Der CLI-Befehl
codecharter lsp
startet den CodeCharter-DSL-Language-Server, der das Language Server Protocol
über stdio (stdin/stdout) spricht. Jeder LSP-fähige Editor kann ihn an
.ccr-Dateien anbinden: Konfigurieren Sie Ihren Editor so, dass er
codecharter lsp als stdio-Language-Server für die Dateiendung .ccr startet.
Wie ein stdio-Server eingebunden wird, beschreibt die LSP-Dokumentation Ihres
Editors.
Der Server bietet:
- Diagnostics, veröffentlicht beim Öffnen und bei jeder Änderung einer Datei.
- Completion für Schema-Properties, ausgelöst durch
@,.und Leerzeichen. - Hover-Informationen.
- Semantic Tokens (gesamtes Dokument) für Syntax-Highlighting.
- Code Actions zu gemeldeten Diagnostics.
Die Dokumentsynchronisation arbeitet mit dem vollständigen Dokumentinhalt,
inkrementelle Synchronisation unterstützt der Server nicht. Wie jeder
CLI-Befehl führt codecharter lsp beim Start die Lizenzprüfung aus und
akzeptiert --license, um auf eine bestimmte codecharter.license-Datei zu
zeigen.
Beachten Sie, dass die oben beschriebenen VS-Code-spezifischen Features
(Snippets, CodeLens-Spec-Aktionen, codecharter restore beim Aktivieren,
Statusleiste) aus der Extension stammen, nicht aus dem Language Server, und
in anderen Editoren nicht verfügbar sind.
Troubleshooting
Wenn der Language Server nicht startet:
- Output-Panel öffnen (
View → Output), CodeCharter im Dropdown wählen. - CLI-Pfad prüfen. Wenn die CLI nicht im PATH ist, setzen Sie
codecharter.serverPathexplizit auf den vollen Pfad. - Rechte prüfen auf Linux und macOS. Das Binary muss ausführbar sein
(
chmod +x codecharter). - LSP-Tracing aktivieren für detaillierte Diagnose:
codecharter.trace.serveraufmessagesoderverbosesetzen. Nach der Diagnose wieder aufoffzurück.
Mehr unter VS-Code-Extension hängt.