lsp-types
lsp-types copied to clipboard
Types for communicating with a language server
Consider a workspace folder sent from a client that sends a folder url like `"uri": "file:///dev/my-project"` (such as what VSCode does). https://github.com/gluon-lang/lsp-types/blob/962604a82ba688ad304f8af7aba50010e1414b3a/src/workspace_folders.rs#L26-L31 Given the JSON of that request, this will...
Every field in this struct already implements `Default`, I don't see why this one doesn't - especially when a lot of the other option structs have a default. https://github.com/gluon-lang/lsp-types/blob/master/src/code_action.rs#L349 I'm...
In #282, we changed the default URI type from [`url::Url`](https://docs.rs/url/2.5.0/url/struct.Url.html) to [`fluent_uri::Uri`](https://docs.rs/fluent-uri/0.1.4/fluent_uri/struct.Uri.html). Despite `fluent_uri` is several order of magnitude less used (and maybe less tested?) than `url`, it is also...
In [Zed](https://github.com/zed-industries/zed), we've noticed that deserialization of CompletionResponse takes non-trivial amount of time (it takes ~380ms to deserialize a 60MB of JSON). We've attributed it to #[serde(untagged)] and rewrote the...
I found that there has already been `item_defaults` field in `CompletionListCapability`. https://github.com/gluon-lang/lsp-types/blob/18ed1b82dad435aba0b3643d0fa14fa12e77a0dc/src/completion.rs#L205 However, `CompletionList` struct still does not support specifying `itemDefaults`. Are there any plans to support this feature? Thank...
The `diagnostic` field on `WorkspaceClientCapabilities` is actually supposed to be called `diagnostics`. This can be confirmed in the [LSP specification](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#clientCapabilities). A consequence of this mis-naming is that `DiagnosticWorkspaceClientCapabilities` are never...
Also moved the options in the same file where onTypeFormatting was. https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#documentFormattingRegistrationOptions These options seem to have been added in 3.0 when registerCapability was added to the spec.