HQL Language
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 |
All keybindings are scoped to .hql editors.
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 optional hlvm fallback 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.
| |