aboutsummaryrefslogtreecommitdiffstats
path: root/lua/nvim-lsp-installer/installers/cargo.lua
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/installers/cargo.lua
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/installers/cargo.lua')
-rw-r--r--lua/nvim-lsp-installer/installers/cargo.lua11
1 files changed, 9 insertions, 2 deletions
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))