-- Installed LSPs are configured and enabled automatically with mason-lspconfig
ensure_installed={},-- explicitly set to an empty table (Kickstart populates installs via mason-tool-installer)
-- The loop below is for overriding the default configuration of LSPs with the ones in the servers table
automatic_installation=false,
forserver_name,configinpairs(servers)do
handlers={
function(server_name)
localconfig=servers[server_name]or{}
vim.lsp.config(server_name,config)
vim.lsp.config(server_name,config)
vim.lsp.enable(server_name)
end
end,
},
-- NOTE: Some servers may require an old setup until they are updated. For the full list refer here: https://github.com/neovim/nvim-lspconfig/issues/3705
}
-- These servers will have to be manually set up with require("lspconfig").server_name.setup{}
-- NOTE: Some servers still require the nvim-lspconfig setup until they are updated
-- Add this template inside the handler function after initializing config if you encounter issues with any lsp
--
-- if server_name == 'example_server' or server_name == 'example_server2' then
-- -- This handles overriding only values explicitly passed
-- -- by the server configuration above. Useful when disabling
-- -- certain features of an LSP (for example, turning off formatting for ts_ls)
-- local capabilities = require('blink.cmp').get_lsp_capabilities()
-- config.capabilities = vim.tbl_deep_extend('force', {}, capabilities, config.capabilities or {})