feat(completion): use blink.cmp in favor of nvim-cmp
This commit is contained in:
@@ -1,14 +1,8 @@
|
||||
{
|
||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"LuaSnip": { "branch": "master", "commit": "33b06d72d220aa56a7ce80a0dd6f06c70cd82b9d" },
|
||||
"alpha-nvim": { "branch": "main", "commit": "de72250e054e5e691b9736ee30db72c65d560771" },
|
||||
"barbecue.nvim": { "branch": "main", "commit": "cd7e7da622d68136e13721865b4d919efd6325ed" },
|
||||
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
|
||||
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
|
||||
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
|
||||
"cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "031e6ba70b0ad5eee49fd2120ff7a2e325b17fa7" },
|
||||
"cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" },
|
||||
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
|
||||
"blink.cmp": { "branch": "main", "commit": "ae5a4ce8f7e519e49de7ae6fcadd74547f820a52" },
|
||||
"conform.nvim": { "branch": "master", "commit": "f4e8837878fc5712d053ba3091a73d27d96a09e2" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"dracula": { "branch": "main", "commit": "e6128ec3923b92bb2b16e81b4a0f04ed0308038e" },
|
||||
@@ -18,7 +12,6 @@
|
||||
"harpoon": { "branch": "harpoon2", "commit": "a84ab829eaf3678b586609888ef52f7779102263" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" },
|
||||
"lsp-zero.nvim": { "branch": "v2.x", "commit": "9a686513eaaa13d737d0fec8956a18268ead8b29" },
|
||||
"lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "8e46de9241d3997927af12196bd8faa0ed08c29a" },
|
||||
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
|
||||
@@ -27,12 +20,11 @@
|
||||
"neogen": { "branch": "main", "commit": "37dd095892e3f846418c465852f7b21f81d0f46c" },
|
||||
"noice.nvim": { "branch": "main", "commit": "eaed6cc9c06aa2013b5255349e4f26a6b17ab70f" },
|
||||
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
|
||||
"nvim-cmp": { "branch": "main", "commit": "3403e2e9391ed0a28c3afddd8612701b647c8e26" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "9f2c279cf9abe584f03bfeb37c6658d68e3ff49d" },
|
||||
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
|
||||
"nvim-spectre": { "branch": "master", "commit": "08be31c104df3b4b049607694ebb2b6ced4f928b" },
|
||||
"nvim-tree-docs": { "branch": "master", "commit": "5db023d783da1e55339e5e25caaf72a59597e626" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "981ca7e353da6ea69eaafe4348fda5e800f9e1d8" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "102bc74e093ef54aab57a368db15befeb9ba9d58" },
|
||||
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" },
|
||||
"nvim-web-devicons": { "branch": "master", "commit": "0eb18da56e2ba6ba24de7130a12bcc4e31ad11cb" },
|
||||
"obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" },
|
||||
|
||||
@@ -1,10 +1,151 @@
|
||||
return {
|
||||
--[[ {
|
||||
"windwp/nvim-autopairs",
|
||||
event = "InsertEnter",
|
||||
config = true,
|
||||
}, ]]
|
||||
{
|
||||
"saghen/blink.cmp",
|
||||
lazy = false,
|
||||
version = "v0.*",
|
||||
opts = {
|
||||
keymap = {
|
||||
["<C-y>"] = { "select_and_accept" },
|
||||
["<C-g>"] = { "show", "hide" },
|
||||
|
||||
["<C-n>"] = { "show", "select_next", "fallback" },
|
||||
["<C-p>"] = { "show", "select_prev", "fallback" },
|
||||
|
||||
["<C-k>"] = { "scroll_documentation_up", "fallback" },
|
||||
["<C-j>"] = { "scroll_documentation_down", "fallback" },
|
||||
},
|
||||
appearance = {
|
||||
nerd_font_variant = "mono",
|
||||
kind_icons = {
|
||||
Text = "",
|
||||
Method = "",
|
||||
Function = "",
|
||||
Constructor = "",
|
||||
|
||||
Field = "",
|
||||
Variable = "",
|
||||
Property = "",
|
||||
|
||||
Class = "",
|
||||
Interface = "",
|
||||
Struct = "",
|
||||
Module = "",
|
||||
|
||||
Unit = "",
|
||||
Value = "",
|
||||
Enum = "",
|
||||
EnumMember = "",
|
||||
|
||||
Keyword = "",
|
||||
Constant = "",
|
||||
|
||||
Snippet = "",
|
||||
Color = "",
|
||||
File = "",
|
||||
Reference = "",
|
||||
Folder = "",
|
||||
Event = "",
|
||||
Operator = "",
|
||||
TypeParameter = "",
|
||||
},
|
||||
},
|
||||
sources = {
|
||||
default = { "lsp", "path", "buffer" },
|
||||
-- optionally disable cmdline completions
|
||||
-- cmdline = {},
|
||||
},
|
||||
completion = {
|
||||
menu = {
|
||||
enabled = true,
|
||||
max_width = 100,
|
||||
border = "single",
|
||||
draw = {
|
||||
padding = 2,
|
||||
columns = { { "kind_icon" }, { "label" }, { "kind" } },
|
||||
|
||||
components = {
|
||||
kind = {
|
||||
text = function(ctx)
|
||||
return "(" .. ctx.kind .. ")"
|
||||
end,
|
||||
},
|
||||
label = {
|
||||
text = function(ctx)
|
||||
return ctx.label
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
documentation = {
|
||||
auto_show = true,
|
||||
window = {
|
||||
border = "single",
|
||||
max_width = 100,
|
||||
},
|
||||
},
|
||||
list = {
|
||||
selection = "manual",
|
||||
},
|
||||
ghost_text = {
|
||||
enabled = false,
|
||||
},
|
||||
},
|
||||
signature = {
|
||||
enabled = false,
|
||||
trigger = {
|
||||
show_on_insert_on_trigger_character = true,
|
||||
},
|
||||
window = {
|
||||
border = "single",
|
||||
},
|
||||
},
|
||||
},
|
||||
opts_extend = { "sources.default" },
|
||||
config = function(_, opts)
|
||||
require("blink.cmp").setup(opts)
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenu", { fg = "#abb2bf", bg = "none" })
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuBorder", { link = "FloatBorder" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpDocBorder", { link = "FloatBorder" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpSignatureHelpBorder", { link = "FloatBorder" })
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabelMatch", { fg = "#50fa7b", bg = "none" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpLabel", { bg = "none" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpMenuSelection", { bg = "none" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKind", { link = "BlinkCmpLabel" })
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpGhostText", { fg = "#abb2bf" })
|
||||
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindTypeParameter", { link = "@variable.parameter" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindConstructor", { link = "@type" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindEnumMember", { link = "@variable.member" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindReference", { link = "@variable.parameter.reference" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindInterface", { link = "@type" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindVariable", { link = "@variable" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindProperty", { link = "@property" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindOperator", { link = "@operator" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindFunction", { link = "@function" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindConstant", { link = "@constant" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindSnippet", { link = "@markup" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindKeyword", { link = "@keyword" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindStruct", { link = "@structure" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindModule", { link = "@module" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindMethod", { link = "@function.method" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindFolder", { link = "TSURI" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindValue", { link = "@variable.member" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindField", { link = "@variable.member" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindEvent", { link = "@constant" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindColor", { link = "DevIconCss" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindClass", { link = "@type" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindUnit", { link = "@variable.member" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindText", { link = "@markup" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindFile", { link = "TSURI" })
|
||||
vim.api.nvim_set_hl(0, "BlinkCmpKindEnum", { link = "@variable.member" })
|
||||
end,
|
||||
},
|
||||
--[[ {
|
||||
"hrsh7th/nvim-cmp",
|
||||
dependencies = {
|
||||
"onsails/lspkind.nvim",
|
||||
@@ -112,5 +253,5 @@ return {
|
||||
},
|
||||
}
|
||||
end,
|
||||
},
|
||||
}, ]]
|
||||
}
|
||||
|
||||
@@ -75,6 +75,7 @@ return {
|
||||
dependencies = {
|
||||
"williamboman/mason.nvim",
|
||||
"williamboman/mason-lspconfig.nvim",
|
||||
"saghen/blink.cmp",
|
||||
},
|
||||
opts = {
|
||||
diagnostics = {
|
||||
@@ -162,6 +163,7 @@ return {
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
local lspconfig = require("lspconfig")
|
||||
local lsp = require("lsp-zero")
|
||||
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
@@ -207,8 +209,6 @@ return {
|
||||
border = "single",
|
||||
}
|
||||
|
||||
local lspconfig = require("lspconfig")
|
||||
|
||||
require("mason-lspconfig").setup({
|
||||
ensure_installed = {
|
||||
"vtsls",
|
||||
@@ -226,11 +226,17 @@ return {
|
||||
handlers = {
|
||||
function(server_name)
|
||||
if lspconfig[server_name] ~= nil then
|
||||
lspconfig[server_name].setup(opts.servers[server_name] or {})
|
||||
local config = opts.servers[server_name] or {}
|
||||
config.capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities)
|
||||
|
||||
lspconfig[server_name].setup(config)
|
||||
end
|
||||
end,
|
||||
lua_ls = function()
|
||||
require("lspconfig").lua_ls.setup(lsp.nvim_lua_ls())
|
||||
local config = lsp.nvim_lua_ls()
|
||||
config.capabilities = require("blink.cmp").get_lsp_capabilities(config.capabilities)
|
||||
|
||||
require("lspconfig").lua_ls.setup(config)
|
||||
end,
|
||||
},
|
||||
})
|
||||
|
||||
@@ -13,6 +13,11 @@ return {
|
||||
hover = {
|
||||
silent = true,
|
||||
},
|
||||
signature = {
|
||||
auto_open = {
|
||||
enabled = false
|
||||
},
|
||||
},
|
||||
},
|
||||
presets = {
|
||||
bottom_search = false,
|
||||
|
||||
@@ -22,8 +22,6 @@ return {
|
||||
vim.api.nvim_set_hl(0, "TabLineSel", { fg = "#282a36", bg = "#50fa7b", bold = true })
|
||||
vim.api.nvim_set_hl(0, "DashboardHeader", { fg = "#50fa7b" })
|
||||
vim.api.nvim_set_hl(0, "DashboardShortCut", { fg = "#bd93f9" })
|
||||
vim.api.nvim_set_hl(0, "CmpItemAbbr", { bg = "none" })
|
||||
vim.api.nvim_set_hl(0, "CmpItemAbbrMatch", { fg = "#50fa7b", bg = "none" })
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user