diff options
Diffstat (limited to 'lua/nvim-lsp-installer/servers')
52 files changed, 144 insertions, 93 deletions
diff --git a/lua/nvim-lsp-installer/servers/angularls/init.lua b/lua/nvim-lsp-installer/servers/angularls/init.lua index feb31190..23970b25 100644 --- a/lua/nvim-lsp-installer/servers/angularls/init.lua +++ b/lua/nvim-lsp-installer/servers/angularls/init.lua @@ -1,6 +1,6 @@ local server = require "nvim-lsp-installer.server" local platform = require "nvim-lsp-installer.platform" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" local Data = require "nvim-lsp-installer.data" local path = require "nvim-lsp-installer.path" @@ -42,6 +42,7 @@ return function(name, root_dir) homepage = "https://angular.io/guide/language-service", languages = { "angular" }, installer = npm.packages { "@angular/language-server", "typescript" }, + async = true, default_options = { cmd = get_cmd(path.cwd()), cmd_env = npm.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/ansiblels/init.lua b/lua/nvim-lsp-installer/servers/ansiblels/init.lua index 2ee54b65..92541e56 100644 --- a/lua/nvim-lsp-installer/servers/ansiblels/init.lua +++ b/lua/nvim-lsp-installer/servers/ansiblels/init.lua @@ -1,8 +1,8 @@ local server = require "nvim-lsp-installer.server" local path = require "nvim-lsp-installer.path" -local std = require "nvim-lsp-installer.installers.std" -local npm = require "nvim-lsp-installer.installers.npm" -local context = require "nvim-lsp-installer.installers.context" +local npm = require "nvim-lsp-installer.core.managers.npm" +local git = require "nvim-lsp-installer.core.managers.git" +local installer = require "nvim-lsp-installer.core.installer" return function(name, root_dir) return server.Server:new { @@ -10,14 +10,13 @@ return function(name, root_dir) root_dir = root_dir, languages = { "ansible" }, homepage = "https://github.com/ansible/ansible-language-server", - installer = { - std.git_clone "https://github.com/ansible/ansible-language-server", - npm.install { "npm@latest" }, -- ansiblels has quite a strict npm version requirement - npm.exec(npm.npm_command, { "install" }), - npm.run "compile", - context.receipt(function(receipt) - receipt:with_primary_source(receipt.git_remote "https://github.com/ansible/ansible-language-server") - end), + async = true, + installer = installer.serial { + git.clone { "https://github.com/ansible/ansible-language-server" }, + -- ansiblels has quite a strict npm version requirement. + -- Install dependencies using the the latest npm version. + npm.exec { "npm@latest", "install" }, + npm.run { "compile" }, }, default_options = { cmd = { "node", path.concat { root_dir, "out", "server", "src", "server.js" }, "--stdio" }, diff --git a/lua/nvim-lsp-installer/servers/asm_lsp/init.lua b/lua/nvim-lsp-installer/servers/asm_lsp/init.lua index 35f3ab92..f80f8401 100644 --- a/lua/nvim-lsp-installer/servers/asm_lsp/init.lua +++ b/lua/nvim-lsp-installer/servers/asm_lsp/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "assembly-gas", "assembly-nasm", "assembly-go" }, homepage = "https://github.com/bergercookie/asm-lsp", + async = true, installer = cargo.crate "asm-lsp", default_options = { cmd_env = cargo.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/awk_ls/init.lua b/lua/nvim-lsp-installer/servers/awk_ls/init.lua index 62695777..213abaca 100644 --- a/lua/nvim-lsp-installer/servers/awk_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/awk_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "awk" }, homepage = "https://github.com/Beaglefoot/awk-language-server", installer = npm.packages { "awk-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/bashls/init.lua b/lua/nvim-lsp-installer/servers/bashls/init.lua index e8a2553e..bb3e5d53 100644 --- a/lua/nvim-lsp-installer/servers/bashls/init.lua +++ b/lua/nvim-lsp-installer/servers/bashls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "bash" }, homepage = "https://github.com/bash-lsp/bash-language-server", + async = true, installer = npm.packages { "bash-language-server" }, default_options = { cmd_env = npm.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/cmake/init.lua b/lua/nvim-lsp-installer/servers/cmake/init.lua index f70624cb..f6c3058a 100644 --- a/lua/nvim-lsp-installer/servers/cmake/init.lua +++ b/lua/nvim-lsp-installer/servers/cmake/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://github.com/regen100/cmake-language-server", languages = { "cmake" }, + async = true, installer = pip3.packages { "cmake-language-server" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/csharp_ls/init.lua b/lua/nvim-lsp-installer/servers/csharp_ls/init.lua index 82ad4258..8600782d 100644 --- a/lua/nvim-lsp-installer/servers/csharp_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/csharp_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local dotnet = require "nvim-lsp-installer.installers.dotnet" +local dotnet = require "nvim-lsp-installer.core.managers.dotnet" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "c#" }, homepage = "https://github.com/razzmatazz/csharp-language-server", + async = true, installer = dotnet.package "csharp-ls", default_options = { cmd_env = dotnet.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/cssmodules_ls/init.lua b/lua/nvim-lsp-installer/servers/cssmodules_ls/init.lua index b1a6c188..cf09539f 100644 --- a/lua/nvim-lsp-installer/servers/cssmodules_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/cssmodules_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/antonk52/cssmodules-language-server", languages = { "css" }, installer = npm.packages { "cssmodules-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/cucumber_language_server/init.lua b/lua/nvim-lsp-installer/servers/cucumber_language_server/init.lua index d9b091db..3d810f01 100644 --- a/lua/nvim-lsp-installer/servers/cucumber_language_server/init.lua +++ b/lua/nvim-lsp-installer/servers/cucumber_language_server/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "cucumber" }, homepage = "https://github.com/cucumber/language-server", installer = npm.packages { "@cucumber/language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/diagnosticls/init.lua b/lua/nvim-lsp-installer/servers/diagnosticls/init.lua index 5594eca2..9b822a2b 100644 --- a/lua/nvim-lsp-installer/servers/diagnosticls/init.lua +++ b/lua/nvim-lsp-installer/servers/diagnosticls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = {}, homepage = "https://github.com/iamcco/diagnostic-languageserver", installer = npm.packages { "diagnostic-languageserver" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/dockerls/init.lua b/lua/nvim-lsp-installer/servers/dockerls/init.lua index ab306ff2..45ce6806 100644 --- a/lua/nvim-lsp-installer/servers/dockerls/init.lua +++ b/lua/nvim-lsp-installer/servers/dockerls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/rcjsuen/dockerfile-language-server-nodejs", languages = { "docker" }, installer = npm.packages { "dockerfile-language-server-nodejs" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/dotls/init.lua b/lua/nvim-lsp-installer/servers/dotls/init.lua index b4655e52..26400b65 100644 --- a/lua/nvim-lsp-installer/servers/dotls/init.lua +++ b/lua/nvim-lsp-installer/servers/dotls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/nikeee/dot-language-server", languages = { "dot" }, installer = npm.packages { "dot-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/elmls/init.lua b/lua/nvim-lsp-installer/servers/elmls/init.lua index 8d5e0041..30eebfd3 100644 --- a/lua/nvim-lsp-installer/servers/elmls/init.lua +++ b/lua/nvim-lsp-installer/servers/elmls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/elm-tooling/elm-language-server", languages = { "elm" }, installer = npm.packages { "@elm-tooling/elm-language-server", "elm", "elm-test", "elm-format" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/ember/init.lua b/lua/nvim-lsp-installer/servers/ember/init.lua index 80c417b6..3ebddec9 100644 --- a/lua/nvim-lsp-installer/servers/ember/init.lua +++ b/lua/nvim-lsp-installer/servers/ember/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "ember" }, homepage = "https://github.com/lifeart/ember-language-server", installer = npm.packages { "@lifeart/ember-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/emmet_ls/init.lua b/lua/nvim-lsp-installer/servers/emmet_ls/init.lua index 93fa181c..91258daa 100644 --- a/lua/nvim-lsp-installer/servers/emmet_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/emmet_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/aca/emmet-ls", languages = { "emmet" }, installer = npm.packages { "emmet-ls" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/esbonio/init.lua b/lua/nvim-lsp-installer/servers/esbonio/init.lua index 173eb44c..b0de81d7 100644 --- a/lua/nvim-lsp-installer/servers/esbonio/init.lua +++ b/lua/nvim-lsp-installer/servers/esbonio/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "sphinx" }, homepage = "https://pypi.org/project/esbonio/", + async = true, installer = pip3.packages { "esbonio" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/flux_lsp/init.lua b/lua/nvim-lsp-installer/servers/flux_lsp/init.lua index 0475528f..be9ffce5 100644 --- a/lua/nvim-lsp-installer/servers/flux_lsp/init.lua +++ b/lua/nvim-lsp-installer/servers/flux_lsp/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "flux" }, homepage = "https://github.com/influxdata/flux-lsp", + async = true, installer = cargo.crate("https://github.com/influxdata/flux-lsp", { git = true, }), diff --git a/lua/nvim-lsp-installer/servers/foam_ls/init.lua b/lua/nvim-lsp-installer/servers/foam_ls/init.lua index 2e28fe08..2586b242 100644 --- a/lua/nvim-lsp-installer/servers/foam_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/foam_ls/init.lua @@ -1,6 +1,5 @@ local server = require "nvim-lsp-installer.server" -local path = require "nvim-lsp-installer.path" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -9,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/FoamScience/foam-language-server", languages = { "foam", "OpenFOAM" }, installer = npm.packages { "foam-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/fortls/init.lua b/lua/nvim-lsp-installer/servers/fortls/init.lua index aade0502..466dc910 100644 --- a/lua/nvim-lsp-installer/servers/fortls/init.lua +++ b/lua/nvim-lsp-installer/servers/fortls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://github.com/hansec/fortran-language-server", languages = { "fortran" }, + async = true, installer = pip3.packages { "fortran-language-server" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/fsautocomplete/init.lua b/lua/nvim-lsp-installer/servers/fsautocomplete/init.lua index cd1284e7..fd075ba7 100644 --- a/lua/nvim-lsp-installer/servers/fsautocomplete/init.lua +++ b/lua/nvim-lsp-installer/servers/fsautocomplete/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local dotnet = require "nvim-lsp-installer.installers.dotnet" +local dotnet = require "nvim-lsp-installer.core.managers.dotnet" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "f#" }, homepage = "https://github.com/fsharp/FsAutoComplete", + async = true, installer = dotnet.package "fsautocomplete", default_options = { cmd_env = dotnet.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/grammarly/init.lua b/lua/nvim-lsp-installer/servers/grammarly/init.lua index 1c8d7646..58c7a217 100644 --- a/lua/nvim-lsp-installer/servers/grammarly/init.lua +++ b/lua/nvim-lsp-installer/servers/grammarly/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/znck/grammarly", languages = {}, installer = npm.packages { "@emacs-grammarly/unofficial-grammarly-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/graphql/init.lua b/lua/nvim-lsp-installer/servers/graphql/init.lua index c513208e..fe0ac0f0 100644 --- a/lua/nvim-lsp-installer/servers/graphql/init.lua +++ b/lua/nvim-lsp-installer/servers/graphql/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://www.npmjs.com/package/graphql-language-service-cli", languages = { "graphql" }, installer = npm.packages { "graphql-language-service-cli", "graphql" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/intelephense/init.lua b/lua/nvim-lsp-installer/servers/intelephense/init.lua index a606ce35..e4e86c29 100644 --- a/lua/nvim-lsp-installer/servers/intelephense/init.lua +++ b/lua/nvim-lsp-installer/servers/intelephense/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://intelephense.com", languages = { "php" }, installer = npm.packages { "intelephense" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/jedi_language_server/init.lua b/lua/nvim-lsp-installer/servers/jedi_language_server/init.lua index 2a7b300a..86c4ebe1 100644 --- a/lua/nvim-lsp-installer/servers/jedi_language_server/init.lua +++ b/lua/nvim-lsp-installer/servers/jedi_language_server/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "python" }, homepage = "https://github.com/pappasam/jedi-language-server", + async = true, installer = pip3.packages { "jedi-language-server" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/lelwel_ls/init.lua b/lua/nvim-lsp-installer/servers/lelwel_ls/init.lua index b00dbdfa..d69aedd5 100644 --- a/lua/nvim-lsp-installer/servers/lelwel_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/lelwel_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "lelwel" }, homepage = "https://github.com/0x2a-42/lelwel", + async = true, installer = cargo.crate("lelwel", { features = "lsp", }), diff --git a/lua/nvim-lsp-installer/servers/nickel_ls/init.lua b/lua/nvim-lsp-installer/servers/nickel_ls/init.lua index d87062e7..bf87cd21 100644 --- a/lua/nvim-lsp-installer/servers/nickel_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/nickel_ls/init.lua @@ -1,8 +1,8 @@ local path = require "nvim-lsp-installer.path" local server = require "nvim-lsp-installer.server" -local std = require "nvim-lsp-installer.installers.std" -local context = require "nvim-lsp-installer.installers.context" -local cargo = require "nvim-lsp-installer.installers.cargo" +local installer = require "nvim-lsp-installer.core.installer" +local cargo = require "nvim-lsp-installer.core.managers.cargo" +local git = require "nvim-lsp-installer.core.managers.git" return function(name, root_dir) return server.Server:new { @@ -10,14 +10,19 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://nickel-lang.org/", languages = { "nickel" }, - installer = { - std.git_clone "https://github.com/tweag/nickel", - cargo.install { - path = path.concat { "lsp", "nls" }, - }, - context.receipt(function(receipt) - receipt:with_primary_source(receipt.git_remote "https://github.com/tweag/nickel") - end), + async = true, + installer = installer.serial { + git.clone { "https://github.com/tweag/nickel" }, + ---@param ctx InstallContext + function(ctx) + ctx.spawn.cargo { + "install", + "--root", + ".", + "--path", + path.concat { "lsp", "nls" }, + } + end, }, default_options = { cmd_env = cargo.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/ocamlls/init.lua b/lua/nvim-lsp-installer/servers/ocamlls/init.lua index 80361b4c..062be8e7 100644 --- a/lua/nvim-lsp-installer/servers/ocamlls/init.lua +++ b/lua/nvim-lsp-installer/servers/ocamlls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -12,6 +12,7 @@ return function(name, root_dir) homepage = "https://github.com/ocaml-lsp/ocaml-language-server", languages = { "ocaml" }, installer = npm.packages { "ocaml-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/ocamllsp/init.lua b/lua/nvim-lsp-installer/servers/ocamllsp/init.lua index 73b6bab8..ad51cfa4 100644 --- a/lua/nvim-lsp-installer/servers/ocamllsp/init.lua +++ b/lua/nvim-lsp-installer/servers/ocamllsp/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local opam = require "nvim-lsp-installer.installers.opam" +local opam = require "nvim-lsp-installer.core.managers.opam" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://github.com/ocaml/ocaml-lsp", languages = { "ocaml" }, + async = true, installer = opam.packages { "ocaml-lsp-server" }, default_options = { cmd_env = opam.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/perlnavigator/init.lua b/lua/nvim-lsp-installer/servers/perlnavigator/init.lua index c944eeb9..fc82fe3c 100644 --- a/lua/nvim-lsp-installer/servers/perlnavigator/init.lua +++ b/lua/nvim-lsp-installer/servers/perlnavigator/init.lua @@ -1,6 +1,6 @@ local server = require "nvim-lsp-installer.server" local path = require "nvim-lsp-installer.path" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -9,6 +9,7 @@ return function(name, root_dir) languages = { "perl" }, homepage = "https://github.com/bscan/PerlNavigator", installer = npm.packages { "perlnavigator-server" }, + async = true, default_options = { cmd = { "node", diff --git a/lua/nvim-lsp-installer/servers/phpactor/init.lua b/lua/nvim-lsp-installer/servers/phpactor/init.lua index 45ce5ccd..af5d863c 100644 --- a/lua/nvim-lsp-installer/servers/phpactor/init.lua +++ b/lua/nvim-lsp-installer/servers/phpactor/init.lua @@ -1,10 +1,10 @@ -local installers = require "nvim-lsp-installer.installers" local path = require "nvim-lsp-installer.path" local server = require "nvim-lsp-installer.server" -local composer = require "nvim-lsp-installer.installers.composer" -local std = require "nvim-lsp-installer.installers.std" -local context = require "nvim-lsp-installer.installers.context" +local composer = require "nvim-lsp-installer.core.managers.composer" +local git = require "nvim-lsp-installer.core.managers.git" +local installer = require "nvim-lsp-installer.core.installer" local process = require "nvim-lsp-installer.process" +local platform = require "nvim-lsp-installer.platform" return function(name, root_dir) return server.Server:new { @@ -12,14 +12,13 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://phpactor.readthedocs.io/en/master/", languages = { "php" }, - installer = installers.when { - unix = { - std.git_clone "https://github.com/phpactor/phpactor.git", - composer.install(), - context.receipt(function(receipt) - receipt:with_primary_source(receipt.git_remote "https://github.com/phpactor/phpactor.git") - end), - }, + async = true, + installer = installer.serial { + function() + assert(platform.is_unix, "Phpactor only supports UNIX environments.") + end, + git.clone { "https://github.com/phpactor/phpactor.git" }, + composer.install(), }, default_options = { cmd_env = { diff --git a/lua/nvim-lsp-installer/servers/prismals/init.lua b/lua/nvim-lsp-installer/servers/prismals/init.lua index e7e38391..e42aa1a1 100644 --- a/lua/nvim-lsp-installer/servers/prismals/init.lua +++ b/lua/nvim-lsp-installer/servers/prismals/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "prisma" }, homepage = "https://github.com/prisma/language-tools", installer = npm.packages { "@prisma/language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/psalm/init.lua b/lua/nvim-lsp-installer/servers/psalm/init.lua index 3b3d4721..8c8b9be3 100644 --- a/lua/nvim-lsp-installer/servers/psalm/init.lua +++ b/lua/nvim-lsp-installer/servers/psalm/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local composer = require "nvim-lsp-installer.installers.composer" +local composer = require "nvim-lsp-installer.core.managers.composer" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, homepage = "https://psalm.dev/", languages = { "php" }, + async = true, installer = composer.require { "vimeo/psalm" }, default_options = { cmd_env = composer.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/purescriptls/init.lua b/lua/nvim-lsp-installer/servers/purescriptls/init.lua index 710d6d47..338bb82c 100644 --- a/lua/nvim-lsp-installer/servers/purescriptls/init.lua +++ b/lua/nvim-lsp-installer/servers/purescriptls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "purescript" }, homepage = "https://github.com/nwolverson/purescript-language-server", installer = npm.packages { "purescript-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/pylsp/init.lua b/lua/nvim-lsp-installer/servers/pylsp/init.lua index a676109b..0ee9e6a0 100644 --- a/lua/nvim-lsp-installer/servers/pylsp/init.lua +++ b/lua/nvim-lsp-installer/servers/pylsp/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" local process = require "nvim-lsp-installer.process" local notify = require "nvim-lsp-installer.notify" @@ -21,6 +21,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "python" }, homepage = "https://github.com/python-lsp/python-lsp-server", + async = true, installer = pip3.packages { "python-lsp-server[all]" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/pyright/init.lua b/lua/nvim-lsp-installer/servers/pyright/init.lua index 8bdcaebd..73c6bed3 100644 --- a/lua/nvim-lsp-installer/servers/pyright/init.lua +++ b/lua/nvim-lsp-installer/servers/pyright/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "python" }, homepage = "https://github.com/microsoft/pyright", installer = npm.packages { "pyright" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/remark_ls/init.lua b/lua/nvim-lsp-installer/servers/remark_ls/init.lua index 860b2db1..acc7c2f3 100644 --- a/lua/nvim-lsp-installer/servers/remark_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/remark_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/remarkjs/remark-language-server", languages = { "markdown" }, installer = npm.packages { "remark-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/rnix/init.lua b/lua/nvim-lsp-installer/servers/rnix/init.lua index 35290aae..d552b11c 100644 --- a/lua/nvim-lsp-installer/servers/rnix/init.lua +++ b/lua/nvim-lsp-installer/servers/rnix/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "nix" }, homepage = "https://github.com/nix-community/rnix-lsp", + async = true, installer = cargo.crate "rnix-lsp", default_options = { cmd_env = cargo.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/rome/init.lua b/lua/nvim-lsp-installer/servers/rome/init.lua index ca1f25bf..7a20384c 100644 --- a/lua/nvim-lsp-installer/servers/rome/init.lua +++ b/lua/nvim-lsp-installer/servers/rome/init.lua @@ -1,7 +1,7 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" -local Data = require "nvim-lsp-installer.data" -local context = require "nvim-lsp-installer.installers.context" +local npm = require "nvim-lsp-installer.core.managers.npm" +local installer = require "nvim-lsp-installer.core.installer" +local Optional = require "nvim-lsp-installer.core.optional" return function(name, root_dir) return server.Server:new { @@ -9,15 +9,16 @@ return function(name, root_dir) root_dir = root_dir, languages = { "typescript", "javascript" }, homepage = "https://rome.tools", - installer = { - context.set(function(ctx) - ctx.requested_server_version = Data.coalesce( - ctx.requested_server_version, - "10.0.7-nightly.2021.7.27" -- https://github.com/rome/tools/pull/1409 - ) - end), + installer = installer.serial { + ---@param ctx InstallContext + function(ctx) + ctx.requested_version = ctx.requested_version:or_(function() + return Optional.of "10.0.7-nightly.2021.7.27" + end) + end, npm.packages { "rome" }, }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/salt_ls/init.lua b/lua/nvim-lsp-installer/servers/salt_ls/init.lua index 8101fa2e..f8d27a7e 100644 --- a/lua/nvim-lsp-installer/servers/salt_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/salt_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local pip3 = require "nvim-lsp-installer.installers.pip3" +local pip3 = require "nvim-lsp-installer.core.managers.pip3" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "sls" }, homepage = "https://github.com/dcermak/salt-lsp", + async = true, installer = pip3.packages { "salt-lsp" }, default_options = { cmd_env = pip3.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/solidity_ls/init.lua b/lua/nvim-lsp-installer/servers/solidity_ls/init.lua index 451738f6..577b5c35 100644 --- a/lua/nvim-lsp-installer/servers/solidity_ls/init.lua +++ b/lua/nvim-lsp-installer/servers/solidity_ls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "solidity" }, homepage = "https://github.com/edag94/vscode-solidity", installer = npm.packages { "solidity-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/sqlls/init.lua b/lua/nvim-lsp-installer/servers/sqlls/init.lua index 7e6e0dff..3e562608 100644 --- a/lua/nvim-lsp-installer/servers/sqlls/init.lua +++ b/lua/nvim-lsp-installer/servers/sqlls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "sql" }, homepage = "https://github.com/joe-re/sql-language-server", installer = npm.packages { "sql-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/stylelint_lsp/init.lua b/lua/nvim-lsp-installer/servers/stylelint_lsp/init.lua index 1bfbe7f3..6d52b3b2 100644 --- a/lua/nvim-lsp-installer/servers/stylelint_lsp/init.lua +++ b/lua/nvim-lsp-installer/servers/stylelint_lsp/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) homepage = "https://github.com/bmatcuk/stylelint-lsp", languages = { "stylelint" }, installer = npm.packages { "stylelint-lsp" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/svelte/init.lua b/lua/nvim-lsp-installer/servers/svelte/init.lua index b14dc247..3cc545b0 100644 --- a/lua/nvim-lsp-installer/servers/svelte/init.lua +++ b/lua/nvim-lsp-installer/servers/svelte/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "svelte" }, homepage = "https://github.com/sveltejs/language-tools", installer = npm.packages { "svelte-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/svls/init.lua b/lua/nvim-lsp-installer/servers/svls/init.lua index 401ee965..58a46432 100644 --- a/lua/nvim-lsp-installer/servers/svls/init.lua +++ b/lua/nvim-lsp-installer/servers/svls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "systemverilog" }, homepage = "https://github.com/dalance/svls", + async = true, installer = cargo.crate "svls", default_options = { cmd_env = cargo.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/tailwindcss/init.lua b/lua/nvim-lsp-installer/servers/tailwindcss/init.lua index d62e70bd..d24948b0 100644 --- a/lua/nvim-lsp-installer/servers/tailwindcss/init.lua +++ b/lua/nvim-lsp-installer/servers/tailwindcss/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "tailwind" }, installer = npm.packages { "@tailwindcss/language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/taplo/init.lua b/lua/nvim-lsp-installer/servers/taplo/init.lua index 94ddcc62..0d584e6b 100644 --- a/lua/nvim-lsp-installer/servers/taplo/init.lua +++ b/lua/nvim-lsp-installer/servers/taplo/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local cargo = require "nvim-lsp-installer.installers.cargo" +local cargo = require "nvim-lsp-installer.core.managers.cargo" return function(name, root_dir) return server.Server:new { @@ -7,6 +7,7 @@ return function(name, root_dir) root_dir = root_dir, languages = { "toml" }, homepage = "https://taplo.tamasfe.dev/lsp/", + async = true, installer = cargo.crate "taplo-cli", default_options = { cmd_env = cargo.env(root_dir), diff --git a/lua/nvim-lsp-installer/servers/tsserver/init.lua b/lua/nvim-lsp-installer/servers/tsserver/init.lua index 5b192475..22091418 100644 --- a/lua/nvim-lsp-installer/servers/tsserver/init.lua +++ b/lua/nvim-lsp-installer/servers/tsserver/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "typescript", "javascript" }, homepage = "https://github.com/typescript-language-server/typescript-language-server", installer = npm.packages { "typescript-language-server", "typescript" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/vimls/init.lua b/lua/nvim-lsp-installer/servers/vimls/init.lua index 28c7d26b..b753e92a 100644 --- a/lua/nvim-lsp-installer/servers/vimls/init.lua +++ b/lua/nvim-lsp-installer/servers/vimls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "vim" }, homepage = "https://github.com/iamcco/vim-language-server", installer = npm.packages { "vim-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/volar/init.lua b/lua/nvim-lsp-installer/servers/volar/init.lua index 769689b4..4bdda7b0 100644 --- a/lua/nvim-lsp-installer/servers/volar/init.lua +++ b/lua/nvim-lsp-installer/servers/volar/init.lua @@ -1,7 +1,7 @@ local path = require "nvim-lsp-installer.path" local fs = require "nvim-lsp-installer.fs" local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) ---@param dir string @@ -26,6 +26,7 @@ return function(name, root_dir) homepage = "https://github.com/johnsoncodehk/volar", languages = { "vue" }, installer = npm.packages { "@volar/vue-language-server", "typescript" }, + async = true, default_options = { cmd_env = npm.env(root_dir), on_new_config = function(new_config, new_root_dir) diff --git a/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua b/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua index 83493834..22c2b045 100644 --- a/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua +++ b/lua/nvim-lsp-installer/servers/vscode-langservers-extracted/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" ---@param languages string[] return function(languages) @@ -9,6 +9,7 @@ return function(languages) languages = languages, root_dir = root_dir, installer = npm.packages { "vscode-langservers-extracted" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/vuels/init.lua b/lua/nvim-lsp-installer/servers/vuels/init.lua index 19f19faf..4b630142 100644 --- a/lua/nvim-lsp-installer/servers/vuels/init.lua +++ b/lua/nvim-lsp-installer/servers/vuels/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "vue" }, homepage = "https://github.com/vuejs/vetur", installer = npm.packages { "vls" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, diff --git a/lua/nvim-lsp-installer/servers/yamlls/init.lua b/lua/nvim-lsp-installer/servers/yamlls/init.lua index 648b5a57..bbd94e0c 100644 --- a/lua/nvim-lsp-installer/servers/yamlls/init.lua +++ b/lua/nvim-lsp-installer/servers/yamlls/init.lua @@ -1,5 +1,5 @@ local server = require "nvim-lsp-installer.server" -local npm = require "nvim-lsp-installer.installers.npm" +local npm = require "nvim-lsp-installer.core.managers.npm" return function(name, root_dir) return server.Server:new { @@ -8,6 +8,7 @@ return function(name, root_dir) languages = { "yaml" }, homepage = "https://github.com/redhat-developer/yaml-language-server", installer = npm.packages { "yaml-language-server" }, + async = true, default_options = { cmd_env = npm.env(root_dir), }, |
