Mercurial > vim
changeset 22549:5055805908f5 v8.2.1823
patch 8.2.1823: "gN" does not select the matched string
Commit: https://github.com/vim/vim/commit/28f224b2c1bd2fcdee7b4fe2c64826e1cff08f39
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Oct 10 16:45:25 2020 +0200
patch 8.2.1823: "gN" does not select the matched string
Problem: "gN" does not select the matched string.
Solution: Move the cursor to the start of the match.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 10 Oct 2020 17:00:03 +0200 |
parents | 5d5ebd3413d6 |
children | d61c22faf4be |
files | src/search.c src/testdir/test_gn.vim src/version.c |
diffstat | 3 files changed, 13 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/src/search.c +++ b/src/search.c @@ -3047,7 +3047,7 @@ current_search( curwin->w_cursor = end_pos; if (LT_POS(VIsual, end_pos) && forward) dec_cursor(); - else if (VIsual_active && LT_POS(curwin->w_cursor, VIsual)) + else if (VIsual_active && LT_POS(curwin->w_cursor, VIsual) && forward) curwin->w_cursor = pos; // put the cursor on the start of the match VIsual_active = TRUE; VIsual_mode = 'v';
--- a/src/testdir/test_gn.vim +++ b/src/testdir/test_gn.vim @@ -172,7 +172,16 @@ func Test_gn_command() normal 0wgNy call assert_equal('one', @") set selection& -endfu +endfunc + +func Test_gN_repeat() + new + call setline(1, 'this list is a list with a list of a list.') + /list + normal $gNgNgNx + call assert_equal('list with a list of a list', @") + bwipe! +endfunc func Test_gn_multi_line() new