From e0a4c8a70395ccd8cd783b3d30fefa63fb6a51cb Mon Sep 17 00:00:00 2001 From: Andreas Louv Date: Wed, 12 Apr 2023 10:25:43 +0200 Subject: [PATCH] Add support for a 'foldingRange' language server --- autoload/lsp/buffer.vim | 1 + autoload/lsp/lsp.vim | 2 +- doc/lsp.txt | 3 ++- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/autoload/lsp/buffer.vim b/autoload/lsp/buffer.vim index 35d2676..5e8a83d 100644 --- a/autoload/lsp/buffer.vim +++ b/autoload/lsp/buffer.vim @@ -59,6 +59,7 @@ export def BufLspServerGet(bnr: number, domain: string = null_string): dict 'codeAction': (lspserver) => lspserver.isCodeActionProvider, 'codeLens': (lspserver) => lspserver.isCodeLensProvider, 'selectionRange': (lspserver) => lspserver.isSelectionRangeProvider, + 'foldingRange': (lspserver) => lspserver.isFoldingRangeProvider, } if !SupportedCheckFns->has_key(domain) diff --git a/autoload/lsp/lsp.vim b/autoload/lsp/lsp.vim index c239df3..9263c68 100644 --- a/autoload/lsp/lsp.vim +++ b/autoload/lsp/lsp.vim @@ -1019,7 +1019,7 @@ enddef # fold the entire document export def FoldDocument() - var lspserver: dict = buf.CurbufGetServerChecked() + var lspserver: dict = buf.CurbufGetServerChecked('foldingRange') if lspserver->empty() return endif diff --git a/doc/lsp.txt b/doc/lsp.txt index 7e7ce97..c62134d 100644 --- a/doc/lsp.txt +++ b/doc/lsp.txt @@ -1376,7 +1376,8 @@ servers should be used for a given method. The following flags are supported rename: true, codeAction: true, codeLens: true, - selectionRange: true + selectionRange: true, + foldingRange: true } < -- 2.50.0