Add LSP.md

Fangrui Song 2018-11-16 01:05:27 -08:00
parent 051ff96a45
commit 05418cc854
2 changed files with 26 additions and 0 deletions

25
LSP.md Normal file

@ -0,0 +1,25 @@
MaskRay's random complaints about Language Server Protocol
### Completion
* VSCode sorts `sortText` case insensitively.
* VSCode only allows length-one strings in `CompletionRegistrationOptions.triggerCharacters` https://github.com/Microsoft/language-server-protocol/issues/138 (closed) Server developers have to work around that. `CompletionTriggerKind::TriggerCharacter` should extend as well.
* The order of `textEdit` `additionTextEdits` is not specified.
### Formatting
* `firstTriggerCharacter` and `moreTriggerCharacter` should be unified
### Miscellaneous
* `interface Position` uses UTF-16 counting for `character`. https://github.com/Microsoft/language-server-protocol/issues/376
* `interface Command` (`workspace/executeCommand`) is VSCode centric.
* `textDocument/implementation` isn't clear. `textDocument/definition` isn't clear when it comes to the difference of declaration/definition.
* `namespace DocumentHighlightKind` is not a bitmask. `Read` and `Write` cannot coexist.
* Why can't we get more `namespace SymbolKind` constants sooner? https://github.com/Microsoft/language-server-protocol/issues/344
## Stuff that needs attention
`textDocument/calls` https://github.com/Microsoft/vscode-languageserver-node/pull/420/files
`$ccls/call`

@ -11,3 +11,4 @@
- [[Visual Studio Code]] - [[Visual Studio Code]]
* [[Debugging]] * [[Debugging]]
* [[Client feature table]] * [[Client feature table]]
* [[LSP]]