return { "saghen/blink.cmp", dependencies = { { "L3MON4D3/LuaSnip", version = "v2.*" }, }, version = "1.*", opts = { fuzzy = { -- implementation = "rust", use_frecency = true, use_proximity = true, use_unsafe_no_lock = false, sorts = { -- function(a, b) -- if (a.client_name == nil or b.client_name == nil) or (a.client_name == b.client_name) then -- return -- end -- return b.client_name == "emmet_language_server" -- end, "exact", "score", "sort_text", }, }, keymap = { preset = "enter", [""] = { "hide", "show", "fallback" }, }, completion = { trigger = { -- 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", "snippets", "lsp", "path", "buffer" }, providers = { lazydev = { name = "LazyDev", module = "lazydev.integrations.blink", -- make lazydev completions top priority (see `:h blink.cmp`) score_offset = 100, }, -- snippets = { -- min_keyword_length = 1, -- score_offset = 4, -- }, -- lsp = { -- min_keyword_length = 3, -- score_offset = 3, -- }, -- path = { -- min_keyword_length = 3, -- score_offset = 2, -- }, -- buffer = { -- min_keyword_length = 5, -- score_offset = 1, -- }, }, }, signature = { enabled = true }, }, }