ex_getln.c: fix <S-Tab> not triggering pum when wildoptions=pum (#10042)

Some of the logic that was present for <Tab> was missing from <S-Tab>.

Closes https://github.com/neovim/neovim/issues/10042.
This commit is contained in:
glacambre
2019-08-14 19:07:04 +02:00
committed by Björn Linse
parent 288526ae73
commit 958ca938b4
2 changed files with 22 additions and 3 deletions

View File

@@ -1021,9 +1021,11 @@ static int command_line_execute(VimState *state, int key)
// <S-Tab> goes to last match, in a clumsy way
if (s->c == K_S_TAB && KeyTyped) {
if (nextwild(&s->xpc, WILD_EXPAND_KEEP, 0, s->firstc != '@') == OK
&& nextwild(&s->xpc, WILD_PREV, 0, s->firstc != '@') == OK
&& nextwild(&s->xpc, WILD_PREV, 0, s->firstc != '@') == OK) {
if (nextwild(&s->xpc, WILD_EXPAND_KEEP, 0, s->firstc != '@') == OK) {
showmatches(&s->xpc, p_wmnu
&& ((wim_flags[s->wim_index] & WIM_LIST) == 0));
nextwild(&s->xpc, WILD_PREV, 0, s->firstc != '@');
nextwild(&s->xpc, WILD_PREV, 0, s->firstc != '@');
return command_line_changed(s);
}
}