mirror of
https://github.com/vim/vim.git
synced 2025-09-27 04:14:06 -04:00
patch 9.1.0098: CompletionChanged not triggered when new leader added without matches
Problem: CompletionChanged not triggered when new leader added causing no matching item in the completion menu Solution: When completion is active but no items matched still trigger CompletChanged event (glepnir) closes: #13982 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
efabd7c8d4
commit
0d3c0a66a3
@@ -1350,7 +1350,13 @@ ins_compl_show_pum(void)
|
||||
}
|
||||
|
||||
if (compl_match_array == NULL)
|
||||
{
|
||||
#ifdef FEAT_EVAL
|
||||
if (compl_started && has_completechanged())
|
||||
trigger_complete_changed_event(cur);
|
||||
#endif
|
||||
return;
|
||||
}
|
||||
|
||||
// In Replace mode when a $ is displayed at the end of the line only
|
||||
// part of the screen would be updated. We do need to redraw here.
|
||||
|
@@ -1139,6 +1139,10 @@ func Test_CompleteChanged()
|
||||
let g:event = copy(v:event)
|
||||
let g:item = get(v:event, 'completed_item', {})
|
||||
let g:word = get(g:item, 'word', v:null)
|
||||
let l:line = getline('.')
|
||||
if g:word == v:null && l:line == "bc"
|
||||
let g:word = l:line
|
||||
endif
|
||||
endfunction
|
||||
augroup AAAAA_Group
|
||||
au!
|
||||
@@ -1158,6 +1162,8 @@ func Test_CompleteChanged()
|
||||
call assert_equal(v:null, g:word)
|
||||
call feedkeys("a\<C-N>\<C-N>\<C-N>\<C-N>\<C-P>", 'tx')
|
||||
call assert_equal('foobar', g:word)
|
||||
call feedkeys("S\<C-N>bc", 'tx')
|
||||
call assert_equal("bc", g:word)
|
||||
|
||||
func Omni_test(findstart, base)
|
||||
if a:findstart
|
||||
|
@@ -704,6 +704,8 @@ static char *(features[]) =
|
||||
|
||||
static int included_patches[] =
|
||||
{ /* Add new patch number below this line */
|
||||
/**/
|
||||
98,
|
||||
/**/
|
||||
97,
|
||||
/**/
|
||||
|
Reference in New Issue
Block a user