Language Server Protocol (LSP) implementation for the Vora programming language, plus the official VS Code extension.
Vora-LSP/
├── server/ # C++ LSP server (builds as part of Vora)
│ ├── lsp_server.h # LspServer class
│ ├── lsp_server.cpp # Protocol handlers + main loop
│ └── main.cpp # Entry point
├── src/
│ └── extension.ts # VS Code language client
├── syntaxes/
│ └── vora.tmLanguage.json # TextMate grammar for .va files
├── package.json # VS Code extension manifest
└── language-configuration.json
- Diagnostics: Real-time parse error reporting via
textDocument/publishDiagnostics - Formatting: Document formatting via
textDocument/formatting(uses Vora'sSourceFormatter) - Completion, go-to-definition, hover, document symbols: Implemented via
SemanticAnalyzer(scope-aware read-only AST analysis, no VM dependency). Also provides references and signature help.
The LSP server is built as part of the main Vora project:
cd Vora
cmake -B build
cmake --build build --target vora-lspThe binary vora-lsp (or vora-lsp.exe on Windows) is produced in the build output directory.
cd Vora-LSP
npm install
npm run compilePress F5 in VS Code to launch an Extension Development Host with Vora support.
npm install -g @vscode/vsce
vsce packageThis produces vora-lang-0.1.0.vsix which can be installed via code --install-extension.
MIT — see the main Vora repository.