Full language support for HQL in VS Code, Cursor, and VSCodium — a production language server plus Calva-style interactive evaluation and paredit structural editing.
Features
- Language server — completion, signature help, diagnostics, hover with inferred types, go-to-definition, references, rename, document & workspace symbols, document highlights, links, folding, call hierarchy, code lens, formatting, syntax + semantic highlighting, and import-path completion.
- Interactive evaluation — evaluate the form at the cursor or the whole file against a live session; results render inline at end-of-line and in the HQL Eval output channel.
- Paredit — slurp, barf, wrap, splice, raise, kill, and transpose, operating on real HQL syntax.
Keybindings
| Action | Shortcut |
|---|---|
| Evaluate form | Ctrl+Enter |
| Evaluate file | Ctrl+Alt+Enter |
| Slurp / barf fwd | Ctrl+Alt+Right / Left |
| Slurp / barf back | Ctrl+Alt+Shift+Left/Right |
Wrap with () |
Ctrl+Alt+W |
| Splice | Ctrl+Alt+S |
| Raise | Ctrl+Alt+P |
| Kill form | Ctrl+Alt+K |
| Transpose | Ctrl+Alt+T |
| Drag form | Ctrl+Shift+Alt+F/B |
| Expand selection | Ctrl+W on macOS, Shift+Alt+Right elsewhere |
| Shrink selection | Ctrl+Shift+W on macOS, Shift+Alt+Left elsewhere |
All keybindings are scoped to .hql editors. Plain Backspace/Delete use strict
paredit when strict mode is on; modified delete shortcuts keep normal editor
word-delete behavior.
How it works
Open any .hql file and the extension starts the HQL language server. A
production VSIX carries the matching slim per-OS server binary, so completion,
evaluation, and paredit work without installing HQL/HLVM separately.
If the bundled server is absent, the extension downloads a prebuilt per-OS
server binary (no Node, npm, or AI runtime) and caches it; if that also fails it
can use an installed hlvm via hlvm lsp. The download host is configurable
via hql.serverDownloadUrl.
HQL: Restart Language Server restarts the server after changing settings.
Settings
hql.serverPath— explicit server binary. Leave empty for automatic bundled server, cached download, and optionalhlvmfallback resolution.hql.serverDownloadUrl— base URL the prebuilt server is fetched from.
Build manually
cd editors/vscode-hql
npm install
npm run package:local # builds current-platform bundled server + .vsix
Then in VS Code / Cursor: Extensions → Install from VSIX.