local M = {} M.get_default_capabilities = function() local capabilities = vim.lsp.protocol.make_client_capabilities() -- nvim-cmp integration (IMPORTANT) local ok, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp") if ok then capabilities = cmp_nvim_lsp.default_capabilities(capabilities) end -- required by nvim-ufo (tu l'as déjà, on garde) capabilities.textDocument.foldingRange = { dynamicRegistration = false, lineFoldingOnly = true, } -- améliore Pyright / Python completion capabilities.textDocument.completion.completionItem = { snippetSupport = true, preselectSupport = true, insertReplaceSupport = true, labelDetailsSupport = true, deprecatedSupport = true, commitCharactersSupport = true, tagSupport = { valueSet = { 1 } }, resolveSupport = { properties = { "documentation", "detail", "additionalTextEdits", }, }, } return capabilities end return M