VSCode extension for VerseConf language support.
Features
- Syntax Highlighting: Full syntax highlighting for .vcf files
- Auto-completion: Context-aware completion for keys and values
- Hover Information: Hover docs for keys and types
- Validation: Real-time error detection and diagnostics
- Formatting: Document formatting support
- LSP Integration: Full Language Server Protocol support
Requirements
- VSCode 1.75.0 or later
- VerseConf LSP server (built from
crates/verseconf-lsp)
Building the LSP Server
Before using the extension, you need to build the LSP server:
cd crates/verseconf-lsp
cargo build --release
The LSP binary will be at crates/verseconf-lsp/target/release/verseconf-lsp.exe
Installation
- Clone the repository
- Install Node.js dependencies:
cd extensions/verseconf-vscode npm install - Compile TypeScript:
npm run compile - Open the project in VSCode and press
F5to debug
Extension Structure
extensions/verseconf-vscode/
├── package.json # Extension manifest
├── language-configuration.json # Language settings
├── syntaxes/
│ └── verseconf.tmLanguage.json # TextMate grammar
├── src/
│ └── extension.ts # Extension entry point
└── tsconfig.json # TypeScript config
Configuration
The extension provides the following settings:
| Setting | Type | Default | Description |
|---|---|---|---|
verseconf.format.aiCanonical |
boolean | false | AI-friendly formatting |
verseconf.lsp.enabled |
boolean | true | Enable LSP features |
verseconf.validation.strict |
boolean | false | Strict validation mode |
Commands
| Command | Description |
|---|---|
verseconf.format |
Format the current document |
verseconf.validate |
Validate the current document |
verseconf.schema.generate |
Generate schema from document |
Keyboard Shortcuts
The extension integrates with VSCode's standard formatting command:
Shift+Alt+F(Windows/Linux) orShift+Option+F(macOS) - Format document
Development
Debugging
- Open
extensions/verseconf-vscodein VSCode - Run
npm install - Press
F5to start debugging - The extension will be loaded in a new Extension Development Host window
Building for Production
npm run vscode:prepublish
This compiles TypeScript to JavaScript in the out folder.
License
MIT OR Apache-2.0