From ad31a2b0e389df2090e0cbc32a5bc5505ea90660 Mon Sep 17 00:00:00 2001 From: Zach Birenbaum Date: Sat, 23 Jul 2022 20:12:34 -0700 Subject: [PATCH] (feat) Custom item kinds (#1003) --- lua/cmp/entry.lua | 5 ++++- lua/cmp/types/lsp.lua | 5 +++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lua/cmp/entry.lua b/lua/cmp/entry.lua index 83c53a2..c478140 100644 --- a/lua/cmp/entry.lua +++ b/lua/cmp/entry.lua @@ -269,10 +269,13 @@ entry.get_vim_item = function(self, suggest_offset) end end + local cmp_opts = self:get_completion_item().cmp or {} + local vim_item = { word = word, abbr = abbr, - kind = types.lsp.CompletionItemKind[self:get_kind()] or types.lsp.CompletionItemKind[1], + kind = cmp_opts.kind_text or types.lsp.CompletionItemKind[self:get_kind()] or types.lsp.CompletionItemKind[1], + kind_hl_group = cmp_opts.kind_hl_group, menu = menu, dup = self:get_completion_item().dup or 1, } diff --git a/lua/cmp/types/lsp.lua b/lua/cmp/types/lsp.lua index 4af54a9..3b20f1f 100644 --- a/lua/cmp/types/lsp.lua +++ b/lua/cmp/types/lsp.lua @@ -170,6 +170,10 @@ lsp.CompletionItemKind = vim.tbl_add_reverse_lookup(lsp.CompletionItemKind) ---@field public detail string|nil ---@field public description string|nil +---@class lsp.Cmp +---@field public kind_text string +---@field public kind_hl_group string + ---@class lsp.CompletionItem ---@field public label string ---@field public labelDetails lsp.CompletionItemLabelDetails|nil @@ -189,6 +193,7 @@ lsp.CompletionItemKind = vim.tbl_add_reverse_lookup(lsp.CompletionItemKind) ---@field public commitCharacters string[]|nil ---@field public command lsp.Command|nil ---@field public data any|nil +---@field public cmp lsp.Cmp|nil --- ---TODO: Should send the issue for upstream? ---@field public word string|nil