mirror of
https://github.com/MaskRay/ccls.git
synced 2025-11-05 14:33:20 +00:00
Page:
LSP
3
LSP
Fangrui Song edited this page 2019-07-20 19:17:27 -07:00
Table of Contents
MaskRay's random complaints about Language Server Protocol
Completion
- VSCode sorts
sortTextcase insensitively. - VSCode only allows length-one strings in
CompletionRegistrationOptions.triggerCharactershttps://github.com/Microsoft/language-server-protocol/issues/138 (closed) Server developers have to work around that.CompletionTriggerKind::TriggerCharactershould extend as well. - The order of
textEditadditionTextEditsis not specified. - Initially
ParameterInformation.labelwas astring(this made it difficult to highlight the label), then changed tostring | [number, number](https://github.com/microsoft/language-server-protocol/issues/640). Specifying[start,end)([number, number]) allows to highlight the label, but then it will not be able to supply a detailed string.
Formatting
firstTriggerCharacterandmoreTriggerCharactershould be unified
Miscellaneous
interface Positionuses UTF-16 counting forcharacter. https://github.com/Microsoft/language-server-protocol/issues/376interface Command(workspace/executeCommand) is VSCode centric.textDocument/implementationisn't clear.textDocument/definitionisn't clear when it comes to the difference of declaration/definition.namespace DocumentHighlightKindis not a bitmask.ReadandWritecannot coexist.- Why can't we get more
namespace SymbolKindconstants sooner? https://github.com/Microsoft/language-server-protocol/issues/344 textDocument/signatureHelp: the position ofParameterInformation::labelis unspecified: it is difficult to highlightParameterInformation::labelinSignatureInformation::label
Stuff that needs attention
textDocument/calls https://github.com/Microsoft/vscode-languageserver-node/pull/420/files
$ccls/call