]> Sergey Matveev's repositories - vim-lsp.git/commitdiff
Make restart server support multiple servers
authorAndreas Louv <andreas@louv.dk>
Wed, 12 Apr 2023 08:13:47 +0000 (10:13 +0200)
committerAndreas Louv <andreas@louv.dk>
Thu, 13 Apr 2023 05:38:15 +0000 (07:38 +0200)
autoload/lsp/lsp.vim

index 0cf12eba9b24f7df2d81fae0c882a3cdbb2dfa71..3fb25974ffd787cdf4243c28ab41973e99c0b15a 100644 (file)
@@ -531,16 +531,6 @@ enddef
 
 # Restart the LSP server for the current buffer
 def RestartServer()
-  var lspserver: dict<any> = buf.CurbufGetServer()
-  if lspserver->empty()
-    return
-  endif
-
-  # Stop the server (if running)
-  if lspserver.running
-    lspserver.stopServer()
-  endif
-
   # Remove all the buffers with the same file type as the current buffer
   var ftype: string = &filetype
   for binfo in getbufinfo()
@@ -549,8 +539,16 @@ def RestartServer()
     endif
   endfor
 
-  # Start the server again
-  lspserver.startServer(bufnr(''))
+  var lspservers: list<dict<any>> = buf.CurbufGetServers()
+  for lspserver in lspservers
+    # Stop the server (if running)
+    if lspserver.running
+      lspserver.stopServer()
+    endif
+
+    # Start the server again
+    lspserver.startServer(bufnr(''))
+  endfor
 
   AddBuffersToLsp(ftype)
 enddef