-- ======================================================================== -- COMPLETION PLUGIN -- ======================================================================== -- Autocompletion engine with LSP integration -- - Blink.cmp: Fast completion engine -- - LuaSnip: Snippet engine -- - Lazydev: Lua LSP for Neovim config -- ======================================================================== return { -- Autocompletion { 'saghen/blink.cmp', event = 'VimEnter', version = '1.*', dependencies = { { 'L3MON4D3/LuaSnip', version = '2.*', build = (function() if vim.fn.has 'win32' == 1 or vim.fn.executable 'make' == 0 then return end return 'make install_jsregexp' end)(), opts = {}, }, 'folke/lazydev.nvim', }, ---@module 'blink.cmp' ---@type blink.cmp.Config opts = { keymap = { preset = 'enter', }, appearance = { nerd_font_variant = 'mono', }, completion = { documentation = { auto_show = false, auto_show_delay_ms = 500 }, }, sources = { default = { 'lsp', 'path', 'snippets', 'lazydev' }, providers = { lazydev = { module = 'lazydev.integrations.blink', score_offset = 100 }, }, }, snippets = { preset = 'luasnip' }, fuzzy = { implementation = 'lua' }, signature = { enabled = true }, }, }, -- Lazydev: Lua LSP for Neovim config { 'folke/lazydev.nvim', ft = 'lua', opts = { library = { { path = '${3rd}/luv/library', words = { 'vim%.uv' } }, }, }, }, }