return { 'saghen/blink.cmp', -- optional: provides snippets for the snippet source dependencies = { 'rafamadriz/friendly-snippets', { 'L3MON4D3/LuaSnip', version = 'v2.*' } }, -- use a release tag to download pre-built binaries version = 'v0.*', opts = { snippets = { preset = 'luasnip', expand = function(snippet) require('luasnip').lsp_expand(snippet) end, active = function(filter) if filter and filter.direction then return require('luasnip').jumpable(filter.direction) end return require('luasnip').in_snippet() end, jump = function(direction) require('luasnip').jump(direction) end, }, completion = { list = { selection = { preselect = false, auto_insert = true } } }, keymap = { preset = 'enter', [''] = { 'select_next', 'snippet_forward', 'fallback' }, [''] = { 'select_prev', 'snippet_backward', 'fallback' }, }, appearance = { use_nvim_cmp_as_default = true, nerd_font_variant = 'mono' }, sources = { default = { 'lsp', 'snippets', 'path', 'buffer' }, }, signature = { enabled = true } }, }