diff options
Diffstat (limited to 'src/ex_getln.c')
-rw-r--r-- | src/ex_getln.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/ex_getln.c b/src/ex_getln.c index 3c40ff79a..918031914 100644 --- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -2369,9 +2369,16 @@ getexmodeline( if (ga_grow(&line_ga, 40) == FAIL) break; - /* Get one character at a time. */ + /* + * Get one character at a time. + */ prev_char = c1; - c1 = vgetc(); + + /* Check for a ":normal" command and no more characters left. */ + if (ex_normal_busy > 0 && typebuf.tb_len == 0) + c1 = '\n'; + else + c1 = vgetc(); /* * Handle line editing. |