From 3af0a8d8f5b090a6a4b085e7b6ee0f5f87eda399 Mon Sep 17 00:00:00 2001 From: glepnir Date: Thu, 20 Feb 2025 22:06:16 +0100 Subject: [PATCH] patch 9.1.1125: cannot loop through pum menu with multiline items Problem: cannot loop through pum menu with multiline items with fuzzy and noselect in 'completeopt' (Tomasz N) Solution: remove unnecessary compl_no_select condition (glepnir) fixes: #16641 closes: #16674 Signed-off-by: glepnir Signed-off-by: Christian Brabandt --- src/insexpand.c | 2 +- src/testdir/test_ins_complete.vim | 8 ++++++++ src/version.c | 2 ++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/insexpand.c b/src/insexpand.c index f696097f31..f280156029 100644 --- a/src/insexpand.c +++ b/src/insexpand.c @@ -1368,7 +1368,7 @@ ins_compl_build_pum(void) compl_shown_match = compl; } - if (!shown_match_ok && compl == compl_shown_match && !compl_no_select) + if (!shown_match_ok && compl == compl_shown_match) { cur = i; shown_match_ok = TRUE; diff --git a/src/testdir/test_ins_complete.vim b/src/testdir/test_ins_complete.vim index be7d80269e..4ecf2893da 100644 --- a/src/testdir/test_ins_complete.vim +++ b/src/testdir/test_ins_complete.vim @@ -2891,6 +2891,14 @@ func Test_complete_fuzzy_match() call assert_equal("for", g:abbr) call assert_equal(2, g:selected) + set cot=menu,menuone,noselect,fuzzy + call feedkeys("i\=CompAnother()\\\\\", 'tx') + call assert_equal("foo", g:word) + call feedkeys("i\=CompAnother()\\", 'tx') + call assert_equal("foo", g:word) + call feedkeys("i\=CompAnother()\\\", 'tx') + call assert_equal("for", g:abbr) + " clean up set omnifunc= bw! diff --git a/src/version.c b/src/version.c index 33640818fa..8d044d1999 100644 --- a/src/version.c +++ b/src/version.c @@ -704,6 +704,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1125, /**/ 1124, /**/