2025-02-02 19:28:41 +01:00
|
|
|
require("blink.cmp").setup({
|
2025-02-07 18:43:12 +01:00
|
|
|
-- disable completion for certain filetypes
|
|
|
|
enabled = function()
|
|
|
|
return not vim.tbl_contains({ "sagarename" }, vim.bo.filetype)
|
|
|
|
and vim.bo.buftype ~= "prompt"
|
|
|
|
and vim.b.completion ~= false
|
|
|
|
end,
|
|
|
|
|
2025-02-02 19:28:41 +01:00
|
|
|
appearance = {
|
|
|
|
use_nvim_cmp_as_default = false,
|
|
|
|
},
|
|
|
|
completion = {
|
|
|
|
accept = {
|
|
|
|
auto_brackets = {
|
|
|
|
enabled = false,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
menu = {
|
2025-02-07 18:43:12 +01:00
|
|
|
-- don't show completion menu automatically when searching
|
|
|
|
auto_show = function(ctx)
|
|
|
|
return ctx.mode ~= "cmdline" or not vim.tbl_contains({ "/", "?" }, vim.fn.getcmdtype())
|
|
|
|
end,
|
|
|
|
|
2025-02-02 19:28:41 +01:00
|
|
|
border = "single",
|
|
|
|
draw = {
|
|
|
|
treesitter = { "lsp" },
|
|
|
|
columns = {
|
|
|
|
{ "label", "label_description", gap = 1 },
|
|
|
|
{ "kind_icon", "kind", gap = 1 },
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
signature = { window = { border = "single" } },
|
|
|
|
sources = {
|
|
|
|
default = { "lsp", "path", "buffer", "copilot" },
|
|
|
|
providers = {
|
|
|
|
copilot = {
|
|
|
|
name = "copilot",
|
|
|
|
module = "blink-copilot",
|
|
|
|
score_offset = 100,
|
|
|
|
async = true,
|
|
|
|
opts = {
|
|
|
|
kind = "IA",
|
|
|
|
max_completions = 3,
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
},
|
|
|
|
|
|
|
|
keymap = {
|
|
|
|
preset = "enter",
|
|
|
|
["<C-q>"] = { "hide", "fallback" },
|
|
|
|
["<S-Tab>"] = { "select_prev", "fallback" },
|
|
|
|
["<Tab>"] = { "select_next", "fallback" },
|
|
|
|
},
|
|
|
|
})
|