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 ({ [''] = cmp.mapping.scroll_docs(-4), [''] = cmp.mapping.scroll_docs(4), [''] = cmp.mapping.complete(), [''] = cmp.mapping.abort(), [''] = cmp.mapping.confirm({ select = true }), [''] = 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'} } } }