lua <'] = cmp.mapping(cmp.mapping.scroll_docs(-4), { 'i', 'c' }), [''] = cmp.mapping(cmp.mapping.scroll_docs(4), { 'i', 'c' }), [''] = cmp.mapping(cmp.mapping.complete(), { 'i', 'c' }), [''] = cmp.config.disable, -- Specify `cmp.config.disable` if you want to remove the default `` mapping. [''] = cmp.mapping({ i = cmp.mapping.abort(), c = cmp.mapping.close(), }), [''] = cmp.mapping.confirm({ select = true }), }, formatting = { format = require("lspkind").cmp_format({with_text = true, menu = ({ buffer = "[Buffer]", })}), }, sources = cmp.config.sources({ { name = 'path' }, }, { { name = 'buffer' }, }, { { name = 'nvim_lsp' }, }) }) -- The nvim-cmp almost supports LSP's capabilities so You should advertise it to LSP servers.. local capabilities = vim.lsp.protocol.make_client_capabilities() capabilities = require('cmp_nvim_lsp').update_capabilities(capabilities) -- The following example advertise capabilities to `clangd`. require'lspconfig'.clangd.setup { capabilities = capabilities, } EOF