diff options
author | Bram Moolenaar <Bram@vim.org> | 2018-06-17 16:23:34 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2018-06-17 16:23:34 +0200 |
commit | 942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa (patch) | |
tree | 0fcb2f684a28b77e8397d39a2b9f4da84f873fbe | |
parent | d595a1910c5672808e44afa028e253e47f03651f (diff) | |
download | vim-git-942b4541a2d8e8df8369ab70e112dbbbe0c7c0aa.tar.gz |
patch 8.1.0064: typing CTRL-W in a prompt buffer shows mode "-- --"v8.1.0064
Problem: Typing CTRL-W in a prompt buffer shows mode "-- --".
Solution: Set restart_edit to 'A' and check for it.
-rw-r--r-- | src/edit.c | 2 | ||||
-rw-r--r-- | src/screen.c | 4 | ||||
-rw-r--r-- | src/version.c | 2 | ||||
-rw-r--r-- | src/window.c | 2 |
4 files changed, 7 insertions, 3 deletions
diff --git a/src/edit.c b/src/edit.c index 326a382b5..3204ec31a 100644 --- a/src/edit.c +++ b/src/edit.c @@ -1179,7 +1179,7 @@ doESCkey: // In a prompt window CTRL-W is used for window commands. // Use Shift-CTRL-W to delete a word. stuffcharReadbuff(Ctrl_W); - restart_edit = 'i'; + restart_edit = 'A'; nomove = TRUE; count = 0; goto doESCkey; diff --git a/src/screen.c b/src/screen.c index 2fae1805d..3dde1b7a1 100644 --- a/src/screen.c +++ b/src/screen.c @@ -10263,7 +10263,7 @@ showmode(void) do_mode = ((p_smd && msg_silent == 0) && ((State & INSERT) - || restart_edit + || restart_edit != NUL || VIsual_active)); if (do_mode || reg_recording != 0) { @@ -10370,7 +10370,7 @@ showmode(void) #endif MSG_PUTS_ATTR(_(" INSERT"), attr); } - else if (restart_edit == 'I') + else if (restart_edit == 'I' || restart_edit == 'A') MSG_PUTS_ATTR(_(" (insert)"), attr); else if (restart_edit == 'R') MSG_PUTS_ATTR(_(" (replace)"), attr); diff --git a/src/version.c b/src/version.c index 9b4e028ba..8159e480c 100644 --- a/src/version.c +++ b/src/version.c @@ -762,6 +762,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 64, +/**/ 63, /**/ 62, diff --git a/src/window.c b/src/window.c index 4f4f08b67..f059b3766 100644 --- a/src/window.c +++ b/src/window.c @@ -2114,6 +2114,8 @@ leaving_window(win_T *win) // When leaving a prompt window stop Insert mode and perhaps restart // it when entering that window again. win->w_buffer->b_prompt_insert = restart_edit; + if (restart_edit != 0 && mode_displayed) + clear_cmdline = TRUE; /* unshow mode later */ restart_edit = NUL; // When leaving the window (or closing the window) was done from a |