return { "saghen/blink.cmp", dependencies = { { "L3MON4D3/LuaSnip", version = "v2.*" }, }, version = "1.*", config = function() require("blink.cmp").setup({ fuzzy = { frecency = { enabled = true, unsafe_no_lock = false, }, use_proximity = true, sorts = { -- "exact", "score", "sort_text", "label", }, }, keymap = { preset = "enter", [""] = { "hide", "show", "fallback" }, [""] = require("minuet").make_blink_map(), }, completion = { trigger = { prefetch_on_insert = false, -- show_in_snippet = false, }, -- Disable showing for all alphanumeric keywords by default. Prefer LSP specific trigger -- characters. -- trigger = { show_on_keyword = false }, -- Controls whether the documentation window will automatically show when selecting a completion item documentation = { auto_show = true, auto_show_delay_ms = 500, window = { border = "rounded", scrollbar = false, }, }, menu = { border = "rounded", draw = { gap = 2 }, scrollbar = false, }, }, snippets = { preset = "luasnip" }, sources = { -- add lazydev to your completion providers default = { "lazydev", "lsp", "snippets", "path", "buffer" }, providers = { lazydev = { name = "LazyDev", module = "lazydev.integrations.blink", -- make lazydev completions top priority (see `:h blink.cmp`) score_offset = 100, }, minuet = { name = "minuet", module = "minuet.blink", async = true, -- Should match minuet.config.request_timeout * 1000, -- since minuet.config.request_timeout is in seconds timeout_ms = 3000, score_offset = 50, -- Gives minuet higher priority among suggestions }, }, }, signature = { enabled = true }, }) end, }