summaryrefslogtreecommitdiff
path: root/lua/lvim/core/cmp.lua
diff options
context:
space:
mode:
authorxeluxee <[email protected]>2022-04-07 20:18:32 +0200
committerGitHub <[email protected]>2022-04-07 22:48:32 +0430
commit4d1cfc4687534bbfde3da36e6d389e86f581be14 (patch)
tree445154c1e073f59c4d95afdbe5c452e9b9cd197c /lua/lvim/core/cmp.lua
parentfcb16c0961cd2b6ca522a0b2088ad663fd605b85 (diff)
[Feature] Add option to set maximum cmp menu width (#2425)
Diffstat (limited to 'lua/lvim/core/cmp.lua')
-rw-r--r--lua/lvim/core/cmp.lua5
1 files changed, 5 insertions, 0 deletions
diff --git a/lua/lvim/core/cmp.lua b/lua/lvim/core/cmp.lua
index afad3ead..621e2b6d 100644
--- a/lua/lvim/core/cmp.lua
+++ b/lua/lvim/core/cmp.lua
@@ -170,6 +170,7 @@ M.config = function()
},
formatting = {
fields = { "kind", "abbr", "menu" },
+ max_width = 0,
kind_icons = {
Class = "ï – ",
Color = " ",
@@ -215,6 +216,10 @@ M.config = function()
},
duplicates_default = 0,
format = function(entry, vim_item)
+ local max_width = lvim.builtin.cmp.formatting.max_width
+ if max_width ~= 0 and #vim_item.abbr > max_width then
+ vim_item.abbr = string.sub(vim_item.abbr, 1, max_width - 1) .. "…"
+ end
vim_item.kind = lvim.builtin.cmp.formatting.kind_icons[vim_item.kind]
vim_item.menu = lvim.builtin.cmp.formatting.source_names[entry.source.name]
vim_item.dup = lvim.builtin.cmp.formatting.duplicates[entry.source.name]