nvim1/lua/plugins/blink.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" },
}