1
0
forked from aniani/vim

patch 9.1.1161: preinsert requires bot "menu" and "menuone" to be set

Problem:  preinsert requires bot "menu" and "menuone" to be set,
          but "menu" is redundant (after v9.1.1160)
Solution: preinsert only requires menuone (glepnir)

closes: #16763

Signed-off-by: glepnir <glephunter@gmail.com>
Signed-off-by: zeertzjq <zeertzjq@outlook.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
glepnir 2025-03-01 16:12:23 +01:00 committed by Christian Brabandt
parent 56957ed410
commit 94a045ed56
No known key found for this signature in database
GPG Key ID: F3F92DA383FDDE09
4 changed files with 14 additions and 8 deletions

View File

@ -1,4 +1,4 @@
*options.txt* For Vim version 9.1. Last change: 2025 Feb 28
*options.txt* For Vim version 9.1. Last change: 2025 Mar 01
VIM REFERENCE MANUAL by Bram Moolenaar
@ -2167,9 +2167,8 @@ A jump table for the options with a short description can be found at |Q_op|.
preinsert
Preinsert the portion of the first candidate word that is
not part of the current completion leader and using the
|hl-ComplMatchIns| highlight group. Does not work when
"fuzzy" is set. Requires both "menu" and "menuone" to be
set.
|hl-ComplMatchIns| highlight group. In order for it to
work, "fuzzy" must not bet set and "menuone" must be set.
preview Show extra information about the currently selected
completion in the preview window. Only works in

View File

@ -1985,15 +1985,15 @@ ins_compl_len(void)
}
/*
* Return TRUE when preinsert is set AND both 'menu' and 'menuone' flags
* are also set, otherwise return FALSE.
* Return TRUE when the 'completeopt' "preinsert" flag is in effect,
* otherwise return FALSE.
*/
static int
ins_compl_has_preinsert(void)
{
int cur_cot_flags = get_cot_flags();
return (cur_cot_flags & (COT_PREINSERT | COT_FUZZY | COT_MENU | COT_MENUONE))
== (COT_PREINSERT | COT_MENU | COT_MENUONE);
return (cur_cot_flags & (COT_PREINSERT | COT_FUZZY | COT_MENUONE))
== (COT_PREINSERT | COT_MENUONE);
}
/*

View File

@ -3223,6 +3223,11 @@ function Test_completeopt_preinsert()
call assert_equal("foo1bar", getline('.'))
call assert_equal(7, col('.'))
set cot=preinsert,menuone
call feedkeys("Sfoo1 foo2\<CR>f\<C-X>\<C-N>", 'tx')
call assert_equal("foo1", getline('.'))
call assert_equal(1, col('.'))
bw!
set cot&
set omnifunc&

View File

@ -704,6 +704,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
1161,
/**/
1160,
/**/