solorice/.config/nvim/lua/user/lsp/configs.lua
Kristofers Solo b0d56edd56 Update neovim
2022-08-27 21:53:40 +03:00

40 lines
782 B
Lua

local status_ok, lsp_installer = pcall(require, "nvim-lsp-installer")
if not status_ok then
return
end
local lspconfig = require("lspconfig")
local servers = {
"bashls",
"clangd",
"cssls",
"diagnosticls",
"emmet_ls",
"html",
"jsonls",
"marksman",
"pyright",
"rust_analyzer",
"sumneko_lua",
"taplo",
"vimls",
"yamlls",
}
lsp_installer.setup({
ensure_installed = servers,
})
for _, server in pairs(servers) do
local opts = {
on_attach = require("user.lsp.handlers").on_attach,
capabilities = require("user.lsp.handlers").capabilities,
}
local has_custom_opts, server_custom_opts = pcall(require, "user.lsp.settings." .. server)
if has_custom_opts then
opts = vim.tbl_deep_extend("force", opts, server_custom_opts)
end
lspconfig[server].setup(opts)
end