52 lines
1.1 KiB
Lua
52 lines
1.1 KiB
Lua
local not_enabled_filetype = { "markdown" }
|
|
|
|
---@module 'blink.cmp'
|
|
---@type blink.cmp.Config
|
|
local opts = {
|
|
keymap = { preset = "super-tab" },
|
|
completion = {
|
|
documentation = {
|
|
auto_show = true,
|
|
treesitter_highlighting = true,
|
|
},
|
|
list = {
|
|
selection = {
|
|
preselect = true,
|
|
auto_insert = false,
|
|
},
|
|
},
|
|
accept = {
|
|
dot_repeat = false,
|
|
create_undo_point = true,
|
|
auto_brackets = { enabled = true },
|
|
},
|
|
},
|
|
appearance = {
|
|
nerd_font_variant = "mono",
|
|
},
|
|
sources = {
|
|
default = { "lsp", "path", "snippets", "buffer" },
|
|
},
|
|
fuzzy = {
|
|
implementation = "prefer_rust_with_warning",
|
|
},
|
|
signature = { enabled = true },
|
|
}
|
|
|
|
return {
|
|
"saghen/blink.cmp",
|
|
dependencies = {
|
|
"rafamadriz/friendly-snippets",
|
|
{ "saghen/blink.compat", optional = true, opts = {}, version = not vim.g.lazyvim_blink_main and "*" },
|
|
},
|
|
event = "InsertEnter",
|
|
version = "1.*",
|
|
enabled = function()
|
|
return not vim.tbl_contains(not_enabled_filetype, vim.bo.filetype)
|
|
and vim.bo.buftype ~= "prompt"
|
|
and vim.b.completion ~= false
|
|
end,
|
|
opts = opts,
|
|
opts_extend = { "sources.completion.enabled_providers", "sources.compat", "sources.default" },
|
|
}
|