diff options
-rw-r--r-- | settings.json | 124 | ||||
-rw-r--r-- | settings/cl-lsp.vim | 13 |
2 files changed, 79 insertions, 58 deletions
diff --git a/settings.json b/settings.json index 71740d5..a548966 100644 --- a/settings.json +++ b/settings.json @@ -66,45 +66,45 @@ "elixir": [ { "command": "elixir-ls", + "requires": [ + "elixir" + ], "vim-plugin": { - "name": "elixir-editors/vim-elixir", "extensions": [ "ex", "exs" - ] - }, - "requires": [ - "elixir" - ] + ], + "name": "elixir-editors/vim-elixir" + } } ], "elm": [ { "command": "elm-language-server", + "requires": [ + "npm" + ], "vim-plugin": { - "name": "ElmCast/elm-vim", "extensions": [ "elm" - ] - }, - "requires": [ - "npm" - ] + ], + "name": "ElmCast/elm-vim" + } } ], "erlang": [ { "command": "erlang-ls", - "vim-plugin": { - "name": "vim-erlang/vim-erlang-runtime", - "extensions": [ - "erl" - ] - }, "requires": [ "make", "rebar3" - ] + ], + "vim-plugin": { + "extensions": [ + "erl" + ], + "name": "vim-erlang/vim-erlang-runtime" + } } ], "fortran": [ @@ -137,6 +137,15 @@ ] } ], + "graphql": [ + { + "command": "gql-language-server", + "requires": [ + "npm", + "watchman" + ] + } + ], "groovy": [ { "command": "groovy-language-server", @@ -200,15 +209,15 @@ "kotlin": [ { "command": "kotlin-language-server", + "requires": [ + "java" + ], "vim-plugin": { - "name": "udalov/kotlin-vim", "extensions": [ "kt" - ] - }, - "requires": [ - "java" - ] + ], + "name": "udalov/kotlin-vim" + } } ], "less": [ @@ -219,6 +228,14 @@ ] } ], + "lisp": [ + { + "command": "cl-lsp", + "requires": [ + "npm" + ] + } + ], "lua": [ { "command": "emmylua-ls", @@ -230,13 +247,13 @@ "nim": [ { "command": "nimlsp", + "requires": [], "vim-plugin": { - "name": "zah/nim.vim", "extensions": [ "nim" - ] - }, - "requires": [] + ], + "name": "zah/nim.vim" + } } ], "php": [ @@ -276,14 +293,14 @@ "reason": [ { "command": "reason-language-server", + "requires": [], "vim-plugin": { - "name": "reasonml-editor/vim-reason-plus", "extensions": [ "re", "rei" - ] - }, - "requires": [] + ], + "name": "reasonml-editor/vim-reason-plus" + } } ], "ruby": [ @@ -327,28 +344,28 @@ "swift": [ { "command": "sourcekit-lsp", + "requires": [ + "sourcekit-lsp" + ], "vim-plugin": { - "name": "keith/swift.vim", "extensions": [ "swift" - ] - }, - "requires": [ - "sourcekit-lsp" - ] + ], + "name": "keith/swift.vim" + } } ], "terraform": [ { "command": "terraform-lsp", + "requires": [], "vim-plugin": { - "name": "hashivim/vim-terraform", "extensions": [ "tf", "tfvars" - ] - }, - "requires": [] + ], + "name": "hashivim/vim-terraform" + } } ], "tex": [ @@ -390,15 +407,15 @@ "vue": [ { "command": "vls", + "requires": [ + "npm" + ], "vim-plugin": { - "name": "posva/vim-vue", "extensions": [ "vue" - ] - }, - "requires": [ - "npm" - ] + ], + "name": "posva/vim-vue" + } } ], "xml": [ @@ -416,14 +433,5 @@ "npm" ] } - ], - "graphql": [ - { - "command": "gql-language-server", - "requires": [ - "npm", - "watchman" - ] - } ] } diff --git a/settings/cl-lsp.vim b/settings/cl-lsp.vim new file mode 100644 index 0000000..5fa2ad3 --- /dev/null +++ b/settings/cl-lsp.vim @@ -0,0 +1,13 @@ +augroup vimlsp_settings_cl_lsp + au! + LspRegisterServer { + \ 'name': 'cl-lsp', + \ 'cmd': {server_info->lsp_settings#get('cl-lsp', 'cmd', {key, name-> ['ros', '-Q', '--', trim(filter(systemlist("ros version"), 'v:val=~"^homedir"')[0][8:], '"''') . '/bin/cl-lsp', 'stdio']})}, + \ 'root_uri':{server_info->lsp_settings#get('cl-lsp', 'root_uri', lsp_settings#root_uri(['.git/']))}, + \ 'initialization_options': lsp_settings#get('cl-lsp', 'initialization_options', {}), + \ 'whitelist': lsp_settings#get('cl-lsp', 'whitelist', ['lisp']), + \ 'blacklist': lsp_settings#get('cl-lsp', 'blacklist', []), + \ 'config': lsp_settings#get('cl-lsp', 'config', {}), + \ 'workspace_config': lsp_settings#get('cl-lsp', 'workspace_config', {}), + \ } +augroup END |