Only set up lsp configs if commands exist

This commit is contained in:
ViViDboarder 2024-09-19 11:31:40 -07:00
parent 174c62704d
commit a917280627

View File

@ -178,10 +178,20 @@ function M.config_lsp()
local default_attach = get_default_attach() local default_attach = get_default_attach()
local default_setup = { capabilities = capabilities, on_attach = default_attach } local default_setup = { capabilities = capabilities, on_attach = default_attach }
local maybe_setup = function(config, options)
-- Setup LSP config if the lsp command exists
if vim.fn.executable(config.document_config.default_config.cmd[1]) == 1 then
config.setup(options)
return true
end
return false
end
-- Configure each server -- Configure each server
lsp_config.gopls.setup(default_setup) maybe_setup(lsp_config.gopls, default_setup)
lsp_config.pyright.setup(default_setup) maybe_setup(lsp_config.pyright, default_setup)
lsp_config.bashls.setup({ maybe_setup(lsp_config.bashls, {
capabilities = capabilities, capabilities = capabilities,
on_attach = default_attach, on_attach = default_attach,
settings = { settings = {
@ -223,10 +233,7 @@ function M.config_lsp()
}) })
end) end)
else else
lsp_config.rls.setup({ maybe_setup(lsp_config.rls, default_setup)
capabilities = capabilities,
on_attach = default_attach,
})
end end
-- Configure neovim dev for when sumneko_lua is installed -- Configure neovim dev for when sumneko_lua is installed