patch 9.1.1679: unclear what key causes CmdlineLeave autocommand

Problem:  unclear what key causes CmdlineLeave autocommand
Solution: Set |v:char| to the key (Girish Palya).

related: #17806
closes: #18063

Signed-off-by: Girish Palya <girishji@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Girish Palya
2025-08-23 18:08:27 +02:00
committed by Christian Brabandt
parent 53466887f7
commit ba9551d131
7 changed files with 41 additions and 4 deletions

View File

@ -1980,6 +1980,9 @@ getcmdline_int(
#endif
|| c == Ctrl_C))
{
#ifdef FEAT_EVAL
set_vim_var_char(c); // Set v:char
#endif
trigger_cmd_autocmd(cmdline_type, EVENT_CMDLINELEAVEPRE);
event_cmdlineleavepre_triggered = TRUE;
#if defined(FEAT_SEARCH_EXTRA) || defined(PROTO)
@ -2646,7 +2649,12 @@ cmdline_changed:
returncmd:
// Trigger CmdlineLeavePre autocommands if not already triggered.
if (!event_cmdlineleavepre_triggered)
{
#ifdef FEAT_EVAL
set_vim_var_char(c); // Set v:char
#endif
trigger_cmd_autocmd(cmdline_type, EVENT_CMDLINELEAVEPRE);
}
#ifdef FEAT_RIGHTLEFT
cmdmsg_rl = FALSE;
@ -2704,6 +2712,9 @@ returncmd:
need_wait_return = FALSE;
// Trigger CmdlineLeave autocommands.
#ifdef FEAT_EVAL
set_vim_var_char(c); // Set v:char
#endif
trigger_cmd_autocmd(cmdline_type, EVENT_CMDLINELEAVE);
State = save_State;