diff options
Diffstat (limited to 'runtime')
-rw-r--r-- | runtime/doc/news.txt | 1 | ||||
-rw-r--r-- | runtime/doc/options.txt | 8 | ||||
-rw-r--r-- | runtime/lua/vim/_meta/options.lua | 11 | ||||
-rw-r--r-- | runtime/optwin.vim | 4 |
4 files changed, 23 insertions, 1 deletions
diff --git a/runtime/doc/news.txt b/runtime/doc/news.txt index aa6af1ef55..5f47c474a7 100644 --- a/runtime/doc/news.txt +++ b/runtime/doc/news.txt @@ -79,6 +79,7 @@ LUA OPTIONS • 'diffopt' `inline:` configures diff highlighting for changes within a line. +• 'pummaxwidth' sets maximum width for the completion popup menu. PLUGINS diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index ada4e250bc..bdc4f20fac 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -4623,6 +4623,14 @@ A jump table for the options with a short description can be found at |Q_op|. Maximum number of items to show in the popup menu (|ins-completion-menu|). Zero means "use available screen space". + *'pummaxwidth'* *'pmw'* +'pummaxwidth' 'pmw' number (default 0) + global + Maximum width for the popup menu (|ins-completion-menu|). When zero, + there is no maximum width limit, otherwise the popup menu will never be + wider than this value. Truncated text will be indicated by "..." at the + end. Takes precedence over 'pumwidth'. + *'pumwidth'* *'pw'* 'pumwidth' 'pw' number (default 15) global diff --git a/runtime/lua/vim/_meta/options.lua b/runtime/lua/vim/_meta/options.lua index 5f93e42c35..9ff4770e7c 100644 --- a/runtime/lua/vim/_meta/options.lua +++ b/runtime/lua/vim/_meta/options.lua @@ -4802,6 +4802,17 @@ vim.o.ph = vim.o.pumheight vim.go.pumheight = vim.o.pumheight vim.go.ph = vim.go.pumheight +--- Maximum width for the popup menu (`ins-completion-menu`). When zero, +--- there is no maximum width limit, otherwise the popup menu will never be +--- wider than this value. Truncated text will be indicated by "..." at the +--- end. Takes precedence over 'pumwidth'. +--- +--- @type integer +vim.o.pummaxwidth = 0 +vim.o.pmw = vim.o.pummaxwidth +vim.go.pummaxwidth = vim.o.pummaxwidth +vim.go.pmw = vim.go.pummaxwidth + --- Minimum width for the popup menu (`ins-completion-menu`). If the --- cursor column + 'pumwidth' exceeds screen width, the popup menu is --- nudged to fit on the screen. diff --git a/runtime/optwin.vim b/runtime/optwin.vim index 56fbb954a7..ce4590f01b 100644 --- a/runtime/optwin.vim +++ b/runtime/optwin.vim @@ -1,7 +1,7 @@ " These commands create the option window. " " Maintainer: The Vim Project <https://github.com/vim/vim> -" Last Change: 2025 Mar 07 +" Last Change: 2025 Mar 28 " Former Maintainer: Bram Moolenaar <Bram@vim.org> " If there already is an option window, jump to that one. @@ -736,6 +736,8 @@ if has("insert_expand") call <SID>OptionG("ph", &ph) call <SID>AddOption("pumwidth", gettext("minimum width of the popup menu")) call <SID>OptionG("pw", &pw) + call <SID>AddOption("pummaxwidth", gettext("maximum width of the popup menu")) + call <SID>OptionG("pmw", &pmw) call <SID>AddOption("completefunc", gettext("user defined function for Insert mode completion")) call append("$", "\t" .. s:local_to_buffer) call <SID>OptionL("cfu") |