dotfiles/nvim/lua/plugins/nvim-cmp.lua

38 lines
998 B
Lua
Raw Normal View History

2024-03-02 17:25:11 +01:00
return {
{
'hrsh7th/nvim-cmp',
config = function()
require('luasnip.loaders.from_vscode').lazy_load()
local cmp = require('cmp')
cmp.setup({
snippet = {
expand = function(args)
require('luasnip').lsp_expand(args.body)
end
},
mapping = cmp.mapping.preset.insert ({
['<C-b>'] = cmp.mapping.scroll_docs(-4),
['<C-f>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(),
['<C-e>'] = cmp.mapping.abort(),
['<CR>'] = cmp.mapping.confirm({ select = true }),
['<TAB>'] = cmp.mapping.confirm({ select = true }),
}),
sources = cmp.config.sources({
{name = 'nvim_lsp'},
{name = 'luasnip'},
{name = 'buffer'}
}),
})
end,
dependencies = {
{'hrsh7th/cmp-nvim-lsp'},
{'saadparwaiz1/cmp_luasnip'},
{'rafamadriz/friendly-snippets'},
{'L3MON4D3/LuaSnip'}
}
}
}