Bloblang for VSCode
Bloblang language support for Visual Studio Code — syntax highlighting plus
language intelligence (completion, hover, go-to-definition, diagnostics) powered
by the blobl_lsp language server.
Features
- Syntax highlighting for standalone
.blobl files, via a TextMate grammar
derived from the blobl_sitter
tree-sitter grammar.
- Embedded highlighting of Bloblang inside Bento/Warpstream YAML config
block scalars (
bloblang, mapping, request_map, result_map,
extract_tracing_map, fields_mapping, and any other |/> block).
- Language server features — completion, hover, definition, and diagnostics
for both standalone files and embedded YAML blocks.
Requirements
The extension automatically downloads the matching blobl_lsp binary for your
platform from the Codeberg releases
on first activation, verifies its SHA-256, and stores it in the extension's global
storage. No manual installation is needed.
| Setting |
Default |
Description |
bloblang.server.path |
`` (empty) |
Path to a blobl_lsp binary. Leave empty to use the managed download; set it to override with your own binary. |
bloblang.trace.server |
off |
Trace client/server communication. |
Resolution precedence: an explicit bloblang.server.path → the managed downloaded
binary → blobl_lsp on your $PATH (fallback if the download fails). Run
Bloblang: Update Language Server from the command palette to force a re-download.
Note on activation. The extension activates on .blobl files and on all
YAML files, so it can highlight and analyse Bloblang embedded in Bento/Warpstream
configs. Highlighting applies to every multi-line block scalar (|/>), since
the editor's YAML grammar does not let injections detect which key introduced a
block. The language server self-gates on block position, so plain YAML without
Bloblang blocks is left untouched.
Building the VSIX
npm install
npm run build
npm run package
Install the resulting .vsix with code --install-extension blobl-lsp-vscode-*.vsix.
Development
Run the grammar snapshot tests and type-check:
npm test
Manual smoke test
The language-client wiring is verified by hand:
npm install && npm run build, then press F5 to launch the Extension
Development Host.
- Open a
.blobl file — confirm keywords, strings, $vars, @metadata, and
builtin calls are highlighted.
- On first activation the extension downloads
blobl_lsp for your platform;
confirm completion (./(), hover, go-to-definition, and diagnostics work.
(Set bloblang.server.path to test with a local binary instead.)
- Open a Bento/Warpstream YAML config — confirm Bloblang inside
bloblang:,
mapping:, request_map:, etc. blocks is highlighted and gets diagnostics.