From cc2c8be481d3bb81ba8881097aa153bcbf64fa23 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Sat, 27 Aug 2022 06:36:26 +0800 Subject: [PATCH] vim-patch:9.0.0279: the tiny version has the popup menu but not 'wildmenu' Problem: The tiny version has the popup menu but not 'wildmenu'. Solution: Graduate the wildmenu feature. https://github.com/vim/vim/commit/5416232707349d5f24294178f47544f2024b73ed N/A patches for version.c: vim-patch:9.0.0281: build failure without the +eval feature Problem: Build failure without the +eval feature. Solution: Add #ifdef. https://github.com/vim/vim/commit/58dcbf1c6586d3873702e035b47829178a91250e --- runtime/doc/options.txt | 15 +++++++++------ src/nvim/ex_getln.c | 1 + 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 164e09ccce..cd4a1bea5a 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -6940,12 +6940,15 @@ A jump table for the options with a short description can be found at |Q_op|. *'wildmenu'* *'wmnu'* *'nowildmenu'* *'nowmnu'* 'wildmenu' 'wmnu' boolean (default on) global - Enables "enhanced mode" of command-line completion. When user hits - (or 'wildchar') to invoke completion, the possible matches are - shown in a menu just above the command-line (see 'wildoptions'), with - the first match highlighted (overwriting the statusline). Keys that - show the previous/next match (/CTRL-P/CTRL-N) highlight the - match. + When 'wildmenu' is on, command-line completion operates in an enhanced + mode. On pressing 'wildchar' (usually ) to invoke completion, + the possible matches are shown. + When 'wildoptions' contains "pum", then the completion matches are + shown in a popup menu. Otherwise they are displayed just above the + command line, with the first match highlighted (overwriting the status + line, if there is one). + Keys that show the previous/next match, such as or + CTRL-P/CTRL-N, cause the highlight to move to the appropriate match. 'wildmode' must specify "full": "longest" and "list" do not start 'wildmenu' mode. You can check the current mode with |wildmenumode()|. The menu is canceled when a key is hit that is not used for selecting diff --git a/src/nvim/ex_getln.c b/src/nvim/ex_getln.c index d73a57ad75..081aa80778 100644 --- a/src/nvim/ex_getln.c +++ b/src/nvim/ex_getln.c @@ -1808,6 +1808,7 @@ static int command_line_handle_key(CommandLineState *s) // menu (if present) cmdline_pum_cleanup(&ccline); } + if (nextwild(&s->xpc, WILD_ALL, 0, s->firstc != '@') == FAIL) { break; }