From cac7edcd85745b090def3d084a1665d2511f4618 Mon Sep 17 00:00:00 2001 From: Andreas Louv Date: Wed, 12 Apr 2023 10:13:47 +0200 Subject: [PATCH] Make workspace folders support multiple servers --- autoload/lsp/lsp.vim | 31 +++++++++++++------------------ 1 file changed, 13 insertions(+), 18 deletions(-) diff --git a/autoload/lsp/lsp.vim b/autoload/lsp/lsp.vim index 3fb2597..2cf6598 100644 --- a/autoload/lsp/lsp.vim +++ b/autoload/lsp/lsp.vim @@ -938,21 +938,14 @@ enddef # Display the list of workspace folders export def ListWorkspaceFolders() - var lspserver: dict = buf.CurbufGetServerChecked() - if lspserver->empty() - return - endif - - :echomsg $'Workspace Folders: {lspserver.workspaceFolders->string()}' + var lspservers: list> = buf.CurbufGetServers() + for lspserver in lspservers + :echomsg $'Workspace Folders: {lspserver.workspaceFolders->string()}' + endfor enddef # Add a workspace folder. Default is to use the current folder. export def AddWorkspaceFolder(dirArg: string) - var lspserver: dict = buf.CurbufGetServerChecked() - if lspserver->empty() - return - endif - var dirName: string = dirArg if dirName == '' dirName = input('Add Workspace Folder: ', getcwd(), 'dir') @@ -966,16 +959,15 @@ export def AddWorkspaceFolder(dirArg: string) return endif - lspserver.addWorkspaceFolder(dirName) + var lspservers: list> = buf.CurbufGetServers() + + for lspserver in lspservers + lspserver.addWorkspaceFolder(dirName) + endfor enddef # Remove a workspace folder. Default is to use the current folder. export def RemoveWorkspaceFolder(dirArg: string) - var lspserver: dict = buf.CurbufGetServerChecked() - if lspserver->empty() - return - endif - var dirName: string = dirArg if dirName == '' dirName = input('Remove Workspace Folder: ', getcwd(), 'dir') @@ -989,7 +981,10 @@ export def RemoveWorkspaceFolder(dirArg: string) return endif - lspserver.removeWorkspaceFolder(dirName) + var lspservers: list> = buf.CurbufGetServers() + for lspserver in lspservers + lspserver.removeWorkspaceFolder(dirName) + endfor enddef # expand the previous selection or start a new selection -- 2.48.1