Ensure all LSP capabilities are broadcast

This commit is contained in:
Kenneth Benzie (Benie) 2024-05-20 11:15:11 +01:00
parent ccec3232b5
commit 9f0d9890fd

View File

@ -72,6 +72,10 @@ return {
},
config = function()
local capabilities = vim.lsp.protocol.make_client_capabilities()
capabilities = vim.tbl_deep_extend(
'force', capabilities, require('cmp_nvim_lsp').default_capabilities())
require('mason').setup()
require('mason-lspconfig').setup({
automatic_installation = false,
@ -81,18 +85,26 @@ return {
-- Default handler, sets up everything unless a custom language server
-- setup handler is defined below
function(server_name)
require('lspconfig')[server_name].setup({})
require('lspconfig')[server_name].setup({
capabilities = capabilities,
})
end,
['clangd'] = function()
require('lspconfig').clangd.setup({
cmd = { 'clangd', '--completion-style=detailed' }
capabilities = capabilities,
cmd = {
'clangd',
'--completion-style=detailed',
'--function-arg-placeholders=1',
}
})
end,
['lua_ls'] = function()
require('neodev').setup()
require('lspconfig').lua_ls.setup({
capabilities = capabilities,
settings = {
Lua = {
diagnostics = {
@ -106,6 +118,7 @@ return {
['pyright'] = function()
require('lspconfig').pyright.setup({
capabilities = capabilities,
settings = {
pyright = {
disableOrganizeImports = true, -- Use ruff import sorter instead