nvim/lua/plugins/lsp.lua

37 lines
855 B
Lua

return {
"neovim/nvim-lspconfig",
event = { "BufReadPre", "BufNewFile" },
dependencies = {
"folke/neoconf.nvim",
"hrsh7th/cmp-nvim-lsp",
},
config = function()
local capabilities = require("cmp_nvim_lsp").default_capabilities()
local servers = {
lua_ls = {
settings = {
Lua = {
diagnostics = { globals = { "vim" } },
},
},
},
ts_ls = {},
html = {},
cssls = {},
jsonls = {},
bashls = {},
marksman = {},
intelephense = {},
}
for name, opts in pairs(servers) do
local ok, mod = pcall(require, "lspconfig." .. name)
if ok and mod and type(mod.setup) == "function" then
opts = vim.tbl_deep_extend("force", { capabilities = capabilities }, opts or {})
mod.setup(opts)
end
end
end,
}