diff options
author | Bram Moolenaar <bram@vim.org> | 2014-09-23 13:48:43 +0200 |
---|---|---|
committer | Bram Moolenaar <bram@vim.org> | 2014-09-23 13:48:43 +0200 |
commit | fd799acd845db63c76179c0df48ada4ae59daccb (patch) | |
tree | ba9f4000a4e2f8e62961bf4e3ac782ae57703f34 | |
parent | 0c900369d68bbd5ddaf3d84e70366761818713a6 (diff) | |
download | vim-fd799acd845db63c76179c0df48ada4ae59daccb.tar.gz |
Problem: When using a Visual selection of multiple words and doing CTRL-W_]
it jumps to the tag matching the word under the cursor, not the
selected text. (Patrick hemmer)
Solution: Do not reset Visual mode. (idea by Christian Brabandt)
-rw-r--r-- | src/version.c | 2 | ||||
-rw-r--r-- | src/window.c | 9 |
2 files changed, 7 insertions, 4 deletions
diff --git a/src/version.c b/src/version.c index 7727401d..1069c0b0 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 454, +/**/ 453, /**/ 452, diff --git a/src/window.c b/src/window.c index 0088e326..4bc2e6c4 100644 --- a/src/window.c +++ b/src/window.c @@ -479,14 +479,15 @@ newwindow: case ']': case Ctrl_RSB: CHECK_CMDWIN - reset_VIsual_and_resel(); /* stop Visual mode */ + /* keep Visual mode, can select words to use as a tag */ if (Prenum) postponed_split = Prenum; else postponed_split = -1; + g_do_tagpreview = 0; - /* Execute the command right here, required when - * "wincmd ]" was used in a function. */ + /* Execute the command right here, required when "wincmd ]" + * was used in a function. */ do_nv_ident(Ctrl_RSB, NUL); break; @@ -590,7 +591,7 @@ wingotofile: #endif case ']': case Ctrl_RSB: - reset_VIsual_and_resel(); /* stop Visual mode */ + /* keep Visual mode, can select words to use as a tag */ if (Prenum) postponed_split = Prenum; else |