Editor support
The language server, the VS Code extension, and the vocabulary scanner.
Language server
Masque ships a language server that speaks LSP over stdio. Any LSP-capable editor can use it.
cargo install --git https://github.com/fian-team/masque masque-lsp
It currently provides:
- Diagnostics from the scanner, the parser, and typed-binding validation
- Hover
- Go to definition
- Document symbols
- Semantic tokens
Completion, find references and rename are not implemented yet.
VS Code
The extension in the repository's editors/vscode folder adds syntax highlighting and connects to the language server. Set masque.lspPath if masque-lsp is not on your PATH.
TODO: publish the extension to the VS Code Marketplace and Open VSX.
Vocabulary scanner
masque-vocab scans documents for style keys and values that Masque would silently ignore:
masque-vocab ui/*.masque
Run it in CI, or assert on widget::vocabulary::scan_source from a test.