Mercurial > vim
changeset 14534:8fa7f5ff2649 v8.1.0280
patch 8.1.0280: 'incsearch' highlighting does not work for ":g!/"
commit https://github.com/vim/vim/commit/def7b1dc6104a6ce6d7c3e3a615231178601b124
Author: Bram Moolenaar <Bram@vim.org>
Date: Mon Aug 13 22:54:35 2018 +0200
patch 8.1.0280: 'incsearch' highlighting does not work for ":g!/"
Problem: 'incsearch' highlighting does not work for ":g!/".
Solution: Skip the exclamation mark. (Hirohito Higashi)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Mon, 13 Aug 2018 23:00:05 +0200 |
parents | 358090a18f5b |
children | 2eecc8d1e8d9 |
files | src/ex_getln.c src/testdir/test_search.vim src/version.c |
diffstat | 3 files changed, 17 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/src/ex_getln.c +++ b/src/ex_getln.c @@ -298,6 +298,13 @@ do_incsearch_highlighting(int firstc, in || STRNCMP(cmd, "global", p - cmd) == 0 || STRNCMP(cmd, "vglobal", p - cmd) == 0)) { + // Check for "global!/". + if (*cmd == 'g' && *p == '!') + { + p++; + if (*skipwhite(p) == NUL) + return FALSE; + } p = skipwhite(p); delim = *p++; end = skip_regexp(p, delim, p_magic, NULL);
--- a/src/testdir/test_search.vim +++ b/src/testdir/test_search.vim @@ -399,6 +399,14 @@ func Test_search_cmdline3g() undo call feedkeys(":global/the\<c-l>/d\<cr>", 'tx') call assert_equal(' 3 the theother', getline(2)) + undo + call feedkeys(":g!/the\<c-l>/d\<cr>", 'tx') + call assert_equal(1, line('$')) + call assert_equal(' 2 the~e', getline(1)) + undo + call feedkeys(":global!/the\<c-l>/d\<cr>", 'tx') + call assert_equal(1, line('$')) + call assert_equal(' 2 the~e', getline(1)) call Incsearch_cleanup() endfunc