subl/syntect
Syntect Sublime LSP
Superpowered Sublime Syntax
sublime-lsp-syntect adds Language Server Protocol support for Sublime Text `.sublime-syntax` files, powered by a Rust syntect server over stdio.
Preview not recorded.
What it shows
What it is and what it demonstrates.
Syntect LSP adds Language Server Protocol support for Sublime Text `.sublime-syntax` files, powered by a Rust syntect server over stdio. It gives syntax authors diagnostics, completion, and navigation inside the editor they are already using to write grammars.
The problem
Sublime syntax definitions are YAML-like files with a complex scoping grammar, but Sublime itself provides no language-server support for authoring them. Errors surface only at load time or through manual scope-inspection tools, and there is no inline completion for context names or match patterns. Syntax authors edit blind compared to the LSP-supported languages they are writing grammars for.
The approach
The plugin wraps a Rust-based syntect server that parses and validates `.sublime-syntax` files, exposing diagnostics, context completion, and scope navigation over LSP. The server communicates over stdio, so it needs no network port and no separate process management from the user. The 4-test surface covers server startup, diagnostic emission, and completion filtering.
What it demonstrates
Published at 0.7.0 with CI, pre-commit hooks, typed source, and 2 documentation pages. Four tests cover the critical path — server spawn, parse, and LSP message framing. The real leverage is the Rust backend: syntect is the same engine Sublime uses internally, so the diagnostics reflect the actual parsing semantics, not an approximation.
Repository evidence
Observable facts.
- Documentation
- 2 documentation files
- Test surface
- 4 test files
- Continuous integration
- Configured
- Pre-commit hooks
- Configured
- Typed source
- Configured
- Visual evidence
- Preview stub
- Technologies
- sublime