]> Sergey Matveev's repositories - vim-lsp.git/commitdiff
Allow empty arguments by default
authorkohnish <kohnish@gmx.com>
Wed, 26 Jan 2022 21:06:49 +0000 (22:06 +0100)
committerkohnish <kohnish@gmx.com>
Wed, 26 Jan 2022 21:06:49 +0000 (22:06 +0100)
autoload/lsp.vim

index 772da603016cf563bbfb570bd86996ecf3c4001e..f528e3587ad20358e28894d699596c216c4979c9 100644 (file)
@@ -428,8 +428,8 @@ enddef
 # Register a LSP server for one or more file types
 def lsp#addServer(serverList: list<dict<any>>)
   for server in serverList
-    if !server->has_key('filetype') || !server->has_key('path') || !server->has_key('args')
-      util.ErrMsg('Error: LSP server information is missing filetype or path or args')
+    if !server->has_key('filetype') || !server->has_key('path')
+      util.ErrMsg('Error: LSP server information is missing filetype or path')
       continue
     endif
     if !server->has_key('omnicompl')
@@ -441,16 +441,22 @@ def lsp#addServer(serverList: list<dict<any>>)
       util.ErrMsg('Error: LSP server ' .. server.path .. ' is not found')
       return
     endif
-    if server.args->type() != v:t_list
-      util.ErrMsg('Error: Arguments for LSP server ' .. server.args .. ' is not a List')
-      return
+    var args = []
+    if server->has_key('args')
+      if server.args->type() != v:t_list
+        util.ErrMsg('Error: Arguments for LSP server ' .. server.args .. ' is not a List')
+        return
+      endif
+      args = server.args
+    else
+
     endif
     if server.omnicompl->type() != v:t_bool
       util.ErrMsg('Error: Setting of omnicompl ' .. server.omnicompl .. ' is not a Boolean')
       return
     endif
 
-    var lspserver: dict<any> = lserver.NewLspServer(server.path, server.args)
+    var lspserver: dict<any> = lserver.NewLspServer(server.path, args)
 
     if server.filetype->type() == v:t_string
       s:lspAddServer(server.filetype, lspserver)