1
0
mirror of https://github.com/helix-editor/helix synced 2026-05-13 20:37:49 +02:00
Files
Michael Davis 6d0974d9bf lsp: Declare supported SymbolKinds in client capabilities
In the spec, the `symbolKind` field in `DocumentSymbolClientCapabilities`
and `WorkspaceSymbolClientCapabilities` must be set with a `valueSet`
containing all supported values. The spec does not default to all values
defined in the spec in order to preserve backwards compatibility with
older spec versions. Instead of using `None` we need to declare support
for all symbols.

In the symbol picker code we only use the `SymbolKind` type to print the
symbol name. If we get an unknown `SymbolKind` we use the empty string
and print nothing, so we satisfy the spec's requirement:

> When [symbolKind] exists the client also guarantees that it will
> handle values outside its set gracefully and falls back to a default
> value when unknown.
2026-04-10 09:19:50 -04:00
..
2024-07-28 10:41:28 -04:00
2024-07-28 10:41:28 -04:00

Helix's lsp-types

This is a fork of the lsp-types crate (gluon-lang/lsp-types) taken at version v0.95.1 (commit 3e6daee). This fork focuses usability improvements that make the types easier to work with for the Helix codebase. For example the URL type - the uri crate at this version of lsp-types - will be replaced with a wrapper around a string.