-- ============================================================================= -- completion.lua — 智能补全 -- ============================================================================= return { { "saghen/blink.cmp", version = "*", event = "InsertEnter", opts = { keymap = { preset = "super-tab", [""] = { "select_next" }, [""] = { "select_prev" }, [""] = { "scroll_documentation_up" }, [""] = { "scroll_documentation_down" }, -- Tab 接受补全,回车仅用于确认输入(避免 nvim-tree 文件操作误触发) [""] = { "accept", "fallback" }, }, appearance = { use_nvim_cmp_as_default = true, nerd_font_variant = "normal", }, sources = { default = { "lsp", "path", "buffer", "snippets" }, }, cmdline = { enabled = true, sources = function() if vim.fn.getcmdline():find("/") then return { "buffer" } end return { "cmdline" } end, completion = { menu = { auto_show = true } }, }, completion = { menu = { border = "rounded", draw = { columns = { { "label", "label_description", gap = 1 }, { "source_name" }, }, }, }, documentation = { auto_show = true, auto_show_delay_ms = 500, window = { border = "rounded" }, }, }, }, }, }