home: vim: lspconfig: simplify LSP config
All checks were successful
ci/woodpecker/push/check Pipeline was successful

Despite what I just said in the previous commit, I decided to remove the
`is_executable` checks and always enable all servers.

I figured out that NeoVim actually handles `PATH` modifications pretty
well in this scenario: making a previously unavailable server executable
will automatically enable it.
This commit is contained in:
Bruno BELANYI 2025-10-03 12:39:18 +00:00
parent 62533d435b
commit 6b1b5300cd

View file

@ -30,38 +30,20 @@ vim.lsp.config("*", {
on_attach = lsp.on_attach, on_attach = lsp.on_attach,
}) })
local servers = {
-- C/C++ -- C/C++
if utils.is_executable("clangd") then clangd = {},
vim.lsp.enable("clangd")
end
-- Haskell -- Haskell
if utils.is_executable("haskell-language-server-wrapper") then hls = {},
vim.lsp.enable("hls")
end
-- Nix -- Nix
if utils.is_executable("nil") then nil_ls = {},
vim.lsp.enable("nil_ls")
end
-- Python -- Python
if utils.is_executable("pyright") then pyright = {},
vim.lsp.enable("pyright") ruff = {},
end
if utils.is_executable("ruff") then
vim.lsp.enable("ruff")
end
-- Rust -- Rust
if utils.is_executable("rust-analyzer") then rust_analyzer = {},
vim.lsp.enable("rust_analyzer")
end
-- Shell -- Shell
if utils.is_executable("bash-language-server") then bashls = {
vim.lsp.config("bashls", {
filetypes = { "bash", "sh", "zsh" }, filetypes = { "bash", "sh", "zsh" },
settings = { settings = {
bashIde = { bashIde = {
@ -73,20 +55,17 @@ if utils.is_executable("bash-language-server") then
}, },
}, },
}, },
}) },
vim.lsp.enable("bashls")
end
-- Starlark -- Starlark
if utils.is_executable("starpls") then starpls = {},
vim.lsp.enable("starpls")
end
-- Generic -- Generic
if utils.is_executable("harper-ls") then harper_ls = {},
vim.lsp.enable("harper_ls") typos_lsp = {},
end }
if utils.is_executable("typos-lsp") then for server, config in pairs(servers) do
vim.lsp.enable("typos_lsp") if not vim.tbl_isempty(config) then
vim.lsp.config(server, config)
end
vim.lsp.enable(server)
end end