diff --git a/src/ex_getln.c b/src/ex_getln.c index 369d6c31e279f..afdf0b4c95b1c 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -52,6 +52,8 @@ static int cmd_showtail; /* Only show path tail in lists ? */ static int new_cmdpos; /* position set by set_cmdline_pos() */ #endif +static int extra_char = NUL; /* extra character to display when redrawing + * the command line */ #ifdef FEAT_CMDHIST typedef struct hist_entry { @@ -1173,12 +1175,14 @@ getcmdline( dont_scroll = TRUE; /* disallow scrolling here */ #endif putcmdline('"', TRUE); + extra_char = '"'; ++no_mapping; i = c = plain_vgetc(); /* CTRL-R */ if (i == Ctrl_O) i = Ctrl_R; /* CTRL-R CTRL-O == CTRL-R CTRL-R */ if (i == Ctrl_R) c = plain_vgetc(); /* CTRL-R CTRL-R */ + extra_char = NUL; --no_mapping; #ifdef FEAT_EVAL /* @@ -1755,8 +1759,10 @@ getcmdline( ignore_drag_release = TRUE; #endif putcmdline('^', TRUE); + extra_char = '^'; c = get_literal(); /* get next (two) character(s) */ do_abbr = FALSE; /* don't do abbreviation now */ + extra_char = NUL; #ifdef FEAT_MBYTE /* may need to remove ^ when composing char was typed */ if (enc_utf8 && utf_iscomposing(c) && !cmd_silent) @@ -1774,10 +1780,12 @@ getcmdline( ignore_drag_release = TRUE; #endif putcmdline('?', TRUE); + extra_char = '?'; #ifdef USE_ON_FLY_SCROLL dont_scroll = TRUE; /* disallow scrolling here */ #endif c = get_digraph(TRUE); + extra_char = NUL; if (c != NUL) break; @@ -3409,6 +3417,8 @@ redrawcmd(void) msg_no_more = FALSE; set_cmdspos_cursor(); + if (extra_char != NUL) + putcmdline(extra_char, TRUE); /* * An emsg() before may have set msg_scroll. This is used in normal mode, diff --git a/src/version.c b/src/version.c index 3640592c11a96..c8322cd1fc708 100644 --- a/src/version.c +++ b/src/version.c @@ -764,6 +764,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 714, /**/ 713, /**/