This commit is contained in:
Umut Önder 2025-05-17 11:56:52 +00:00 committed by GitHub
commit 526a796f79
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 13 additions and 20 deletions

View File

@ -655,12 +655,6 @@ require('lazy').setup({
}, },
} }
-- LSP servers and clients are able to communicate to each other what features they support.
-- By default, Neovim doesn't support everything that is in the LSP specification.
-- When you add blink.cmp, luasnip, etc. Neovim now has *more* capabilities.
-- So, we create new capabilities with blink.cmp, and then broadcast that to the servers.
local capabilities = require('blink.cmp').get_lsp_capabilities()
-- Enable the following language servers -- Enable the following language servers
-- Feel free to add/remove any LSPs that you want here. They will automatically be installed. -- Feel free to add/remove any LSPs that you want here. They will automatically be installed.
-- --
@ -699,6 +693,11 @@ require('lazy').setup({
}, },
}, },
} }
---@type MasonLspconfigSettings
---@diagnostic disable-next-line: missing-fields
require('mason-lspconfig').setup {
automatic_enable = vim.tbl_keys(servers or {}),
}
-- Ensure the servers and tools above are installed -- Ensure the servers and tools above are installed
-- --
@ -719,20 +718,14 @@ require('lazy').setup({
}) })
require('mason-tool-installer').setup { ensure_installed = ensure_installed } require('mason-tool-installer').setup { ensure_installed = ensure_installed }
require('mason-lspconfig').setup { -- 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, for server_name, config in pairs(servers) do
handlers = { vim.lsp.config(server_name, config)
function(server_name) end
local server = servers[server_name] or {}
-- This handles overriding only values explicitly passed -- 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
-- by the server configuration above. Useful when disabling -- These servers will have to be manually set up with require("lspconfig").server_name.setup{}
-- certain features of an LSP (for example, turning off formatting for ts_ls)
server.capabilities = vim.tbl_deep_extend('force', {}, capabilities, server.capabilities or {})
require('lspconfig')[server_name].setup(server)
end,
},
}
end, end,
}, },