return { "saghen/blink.cmp", lazy = false, version = "*", dependencies = { "neovim/nvim-lspconfig", "echasnovski/mini.nvim", "folke/lazydev.nvim", { "saghen/blink.compat", version = "*", }, }, opts = function() local window_options = { border = "rounded", winblend = vim.o.pumblend, } ---@module 'blink.cmp' ---@type blink.cmp.Config return { appearance = { nerd_font_variant = 'mono' }, completion = { accept = { auto_brackets = { enabled = true }, }, -- Show documentation when selecting a completion item documentation = { auto_show = true, auto_show_delay_ms = 500 }, -- Display a preview of the selected item on the current line ghost_text = { enabled = true }, }, keymap = { preset = "enter", [""] = { 'select_next', 'fallback' }, [""] = { 'select_prev', 'fallback' }, [""] = { 'scroll_documentation_up', 'fallback' }, [""] = { 'scroll_documentation_down', 'fallback' }, }, sources = { providers = { lazydev = { name = "LazyDev", module = "lazydev.integrations.blink" }, luasnip = { name = 'luasnip', module = 'blink.compat.source', score_offset = -3, opts = { use_show_condition = false, show_autosnippets = true, }, }, }, default = { "lsp", "path", "snippets", "buffer", "lazydev", }, per_filetype = { sql = { 'snippets', 'dadbod', 'buffer' }, }, }, } end }