aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer
diff options
context:
space:
mode:
authorWilliam Boman <william@redwill.se>2022-02-02 20:33:51 +0100
committerGitHub <noreply@github.com>2022-02-02 20:33:51 +0100
commit10f4fb17d982d2ced01552f3bd5bdd9987c3bb54 (patch)
treef5effb62d2eaedfff4658296506a260ed87b1385 /lua/nvim-lsp-installer
parentadd salt_ls (#449) (diff)
downloadmason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar.gz
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar.bz2
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar.lz
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar.xz
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.tar.zst
mason-10f4fb17d982d2ced01552f3bd5bdd9987c3bb54.zip
add flux_lsp (#456)
Diffstat (limited to 'lua/nvim-lsp-installer')
-rw-r--r--lua/nvim-lsp-installer/_generated/filetype_map.lua1
-rw-r--r--lua/nvim-lsp-installer/_generated/metadata.lua3
-rw-r--r--lua/nvim-lsp-installer/installers/cargo.lua11
-rw-r--r--lua/nvim-lsp-installer/servers/flux_lsp/init.lua17
-rw-r--r--lua/nvim-lsp-installer/servers/init.lua1
5 files changed, 31 insertions, 2 deletions
diff --git a/lua/nvim-lsp-installer/_generated/filetype_map.lua b/lua/nvim-lsp-installer/_generated/filetype_map.lua
index 01b44f85..016e236e 100644
--- a/lua/nvim-lsp-installer/_generated/filetype_map.lua
+++ b/lua/nvim-lsp-installer/_generated/filetype_map.lua
@@ -35,6 +35,7 @@ return {
erb = { "tailwindcss" },
erlang = { "erlangls" },
eruby = { "tailwindcss" },
+ flux = { "flux_lsp" },
foam = { "foam_ls" },
fortran = { "fortls" },
fsharp = { "fsautocomplete" },
diff --git a/lua/nvim-lsp-installer/_generated/metadata.lua b/lua/nvim-lsp-installer/_generated/metadata.lua
index b0ba07c6..a1c01a55 100644
--- a/lua/nvim-lsp-installer/_generated/metadata.lua
+++ b/lua/nvim-lsp-installer/_generated/metadata.lua
@@ -97,6 +97,9 @@ return {
eslint = {
filetypes = { "javascript", "javascriptreact", "javascript.jsx", "typescript", "typescriptreact", "typescript.tsx", "vue" }
},
+ flux_lsp = {
+ filetypes = { "flux" }
+ },
foam_ls = {
filetypes = { "foam", "OpenFOAM" }
},
diff --git a/lua/nvim-lsp-installer/installers/cargo.lua b/lua/nvim-lsp-installer/installers/cargo.lua
index c4f11854..1779980b 100644
--- a/lua/nvim-lsp-installer/installers/cargo.lua
+++ b/lua/nvim-lsp-installer/installers/cargo.lua
@@ -4,19 +4,26 @@ local path = require "nvim-lsp-installer.path"
local M = {}
---@param crate string The crate to install.
----@param opts {features:string|nil}
+---@param opts {git:boolean, features:string|nil}
function M.crate(crate, opts)
---@type ServerInstallerFunction
return function(_, callback, ctx)
opts = opts or {}
local args = { "install", "--root", ".", "--locked" }
+
if ctx.requested_server_version then
vim.list_extend(args, { "--version", ctx.requested_server_version })
end
+
if opts.features then
vim.list_extend(args, { "--features", opts.features })
end
- vim.list_extend(args, { crate })
+
+ if opts.git then
+ vim.list_extend(args, { "--git", crate })
+ else
+ vim.list_extend(args, { crate })
+ end
ctx.receipt:with_primary_source(ctx.receipt.cargo(crate))
diff --git a/lua/nvim-lsp-installer/servers/flux_lsp/init.lua b/lua/nvim-lsp-installer/servers/flux_lsp/init.lua
new file mode 100644
index 00000000..0475528f
--- /dev/null
+++ b/lua/nvim-lsp-installer/servers/flux_lsp/init.lua
@@ -0,0 +1,17 @@
+local server = require "nvim-lsp-installer.server"
+local cargo = require "nvim-lsp-installer.installers.cargo"
+
+return function(name, root_dir)
+ return server.Server:new {
+ name = name,
+ root_dir = root_dir,
+ languages = { "flux" },
+ homepage = "https://github.com/influxdata/flux-lsp",
+ installer = cargo.crate("https://github.com/influxdata/flux-lsp", {
+ git = true,
+ }),
+ default_options = {
+ cmd_env = cargo.env(root_dir),
+ },
+ }
+end
diff --git a/lua/nvim-lsp-installer/servers/init.lua b/lua/nvim-lsp-installer/servers/init.lua
index 1c23d840..065c123c 100644
--- a/lua/nvim-lsp-installer/servers/init.lua
+++ b/lua/nvim-lsp-installer/servers/init.lua
@@ -63,6 +63,7 @@ local CORE_SERVERS = Data.set_of {
"erlangls",
"esbonio",
"eslint",
+ "flux_lsp",
"foam_ls",
"fortls",
"fsautocomplete",