From: Yegappan Lakshmanan Date: Sun, 23 Apr 2023 15:36:44 +0000 (-0700) Subject: Save the server textDocumentSync capability X-Git-Url: http://www.git.stargrave.org/?a=commitdiff_plain;h=a32e664efb35295d9690aa4b6a97216c0a2179b4;p=vim-lsp.git Save the server textDocumentSync capability --- diff --git a/autoload/lsp/capabilities.vim b/autoload/lsp/capabilities.vim index 15a9766..c8a092c 100644 --- a/autoload/lsp/capabilities.vim +++ b/autoload/lsp/capabilities.vim @@ -236,31 +236,30 @@ export def ProcessServerCaps(lspserver: dict, caps: dict) lspserver.isClangdInlayHintsProvider = false endif - # textDocument/didSave notification + # textDocumentSync capabilities + lspserver.supportsDidSave = false + # Default to TextDocumentSyncKind.None + lspserver.textDocumentSync = 0 if lspserver.caps->has_key('textDocumentSync') if lspserver.caps.textDocumentSync->type() == v:t_bool - || lspserver.caps.textDocumentSync->type() == v:t_number + || lspserver.caps.textDocumentSync->type() == v:t_number lspserver.supportsDidSave = lspserver.caps.textDocumentSync - else - if lspserver.caps.textDocumentSync->type() == v:t_dict - if lspserver.caps.textDocumentSync->has_key('save') - if lspserver.caps.textDocumentSync.save->type() == v:t_bool + lspserver.textDocumentSync = lspserver.caps.textDocumentSync + elseif lspserver.caps.textDocumentSync->type() == v:t_dict + # "save" + if lspserver.caps.textDocumentSync->has_key('save') + if lspserver.caps.textDocumentSync.save->type() == v:t_bool || lspserver.caps.textDocumentSync.save->type() == v:t_number - lspserver.supportsDidSave = lspserver.caps.textDocumentSync.save - elseif lspserver.caps.textDocumentSync.save->type() == v:t_dict - lspserver.supportsDidSave = true - else - lspserver.supportsDidSave = false - endif - else - lspserver.supportsDidSave = false + lspserver.supportsDidSave = lspserver.caps.textDocumentSync.save + elseif lspserver.caps.textDocumentSync.save->type() == v:t_dict + lspserver.supportsDidSave = true endif - else - lspserver.supportsDidSave = false + endif + # "change" + if lspserver.caps.textDocumentSync->has_key('change') + lspserver.textDocumentSync = lspserver.caps.textDocumentSync.change endif endif - else - lspserver.supportsDidSave = false endif enddef