diff --git a/.config/nvim/lua/plugin/lsp/init.lua b/.config/nvim/lua/plugin/lsp/init.lua index 468a445..3810d38 100644 --- a/.config/nvim/lua/plugin/lsp/init.lua +++ b/.config/nvim/lua/plugin/lsp/init.lua @@ -28,16 +28,6 @@ vim.diagnostic.config({ update_in_insert = true }) - -local enhance_server_opts = { - ["clangd"] = function(opts) - require("plugin.lsp.clangd").setup(opts) - end, - ["sumneko_lua"] = function(opts) - require("plugin.lsp.sumneko_lua").setup(opts) - end, -} - local on_attach = function(_, bufnr) local opts = { buffer = bufnr } vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts) @@ -67,34 +57,27 @@ end local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = require("cmp_nvim_lsp").update_capabilities(capabilities) --- Enable the following language servers +-- Setup nvim-lsp-installer local servers = { "clangd", "sumneko_lua" } lsp_installer.setup { - ensure_installed = servers -} - --- Setup nvim-lsp-installer -lsp_installer.settings { + ensure_installed = servers, ui = { icons = { server_installed = "✓", server_pending = "o", - server_uninstalled = "x" + server_uninstalled = "" } } } - for _, server in ipairs(servers) do local opts = { on_attach = on_attach, capabilities = capabilities, } - if enhance_server_opts[server] then - -- Enhance the default opts with the server-specific ones - enhance_server_opts[server](opts) - end + local plugin = string.format("%s.%s", "plugin.lsp", server) + require(plugin).setup(opts) lspconfig[server].setup(opts) end