fix(ui): cmdline_block events for exmode #37751

Problem:  Exmode is missing cmdline_block events.
Solution: Emit cmdline_block_show/append when executing a cmdline during
          exmode. Emit cmdline_block_hide when leaving exmode.
This commit is contained in:
luukvbaal
2026-02-06 14:10:33 +01:00
committed by GitHub
parent d2141396cd
commit a33e5fb1bb
3 changed files with 38 additions and 0 deletions

View File

@@ -5925,6 +5925,9 @@ void do_exedit(exarg_T *eap, win_T *old_curwin)
|| eap->cmdidx == CMD_view)) {
exmode_active = false;
ex_pressedreturn = false;
if (ui_has(kUICmdline)) {
ui_ext_cmdline_block_leave();
}
if (*eap->arg == NUL) {
// Special case: ":global/pat/visual\NLvi-commands"
if (global_busy) {

View File

@@ -1006,6 +1006,9 @@ theend:
char *p = ccline.cmdbuff;
if (ui_has(kUICmdline)) {
if (exmode_active) {
ui_ext_cmdline_block_append(0, p);
}
ui_ext_cmdline_hide(s->gotesc);
}
if (!cmd_silent) {