mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 9.1.1272: completion: in keyword completion Ctrl_P cannot go back after Ctrl_N
Problem: completion: in keyword completion Ctrl_P cannot go back after Ctrl_N Solution: in find_compl_when_fuzzy() always return first match of array, after Ctrl_P use compl_shown_match->cp_next instead of compl_first_match. (glepnir) closes: #17043 Signed-off-by: glepnir <glephunter@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
committed by
Christian Brabandt
parent
6099db9a60
commit
3e50a28a03
@@ -4831,7 +4831,8 @@ find_comp_when_fuzzy(void)
|
||||
|
||||
if ((is_forward && compl_selected_item == compl_match_arraysize - 1)
|
||||
|| (is_backward && compl_selected_item == 0))
|
||||
return compl_first_match != compl_shown_match ? compl_first_match :
|
||||
return compl_first_match != compl_shown_match ?
|
||||
(is_forward ? compl_shown_match->cp_next : compl_first_match) :
|
||||
(compl_first_match->cp_prev ? compl_first_match->cp_prev : NULL);
|
||||
|
||||
if (is_forward)
|
||||
|
@@ -2834,6 +2834,8 @@ func Test_complete_opt_fuzzy()
|
||||
call assert_equal('bar', getline('.'))
|
||||
call feedkeys("Sb\<C-X>\<C-N>\<C-Y>\<ESC>", 'tx')
|
||||
call assert_equal('blue', getline('.'))
|
||||
call feedkeys("Sb\<C-X>\<C-P>\<C-N>\<C-Y>\<ESC>", 'tx')
|
||||
call assert_equal('b', getline('.'))
|
||||
|
||||
" clean up
|
||||
set omnifunc=
|
||||
|
@@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
1272,
|
||||
/**/
|
||||
1271,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user