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() 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').setup()
require('mason-lspconfig').setup({ require('mason-lspconfig').setup({
automatic_installation = false, automatic_installation = false,
@ -81,18 +85,26 @@ return {
-- Default handler, sets up everything unless a custom language server -- Default handler, sets up everything unless a custom language server
-- setup handler is defined below -- setup handler is defined below
function(server_name) function(server_name)
require('lspconfig')[server_name].setup({}) require('lspconfig')[server_name].setup({
capabilities = capabilities,
})
end, end,
['clangd'] = function() ['clangd'] = function()
require('lspconfig').clangd.setup({ require('lspconfig').clangd.setup({
cmd = { 'clangd', '--completion-style=detailed' } capabilities = capabilities,
cmd = {
'clangd',
'--completion-style=detailed',
'--function-arg-placeholders=1',
}
}) })
end, end,
['lua_ls'] = function() ['lua_ls'] = function()
require('neodev').setup() require('neodev').setup()
require('lspconfig').lua_ls.setup({ require('lspconfig').lua_ls.setup({
capabilities = capabilities,
settings = { settings = {
Lua = { Lua = {
diagnostics = { diagnostics = {
@ -106,6 +118,7 @@ return {
['pyright'] = function() ['pyright'] = function()
require('lspconfig').pyright.setup({ require('lspconfig').pyright.setup({
capabilities = capabilities,
settings = { settings = {
pyright = { pyright = {
disableOrganizeImports = true, -- Use ruff import sorter instead disableOrganizeImports = true, -- Use ruff import sorter instead