mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
patch 8.1.0321: 'incsearch' regression: /\v highlights everything
Problem: 'incsearch' regression: /\v highlights everything. Solution: Put back the empty_pattern() check.
This commit is contained in:
@@ -572,6 +572,17 @@ may_do_incsearch_highlighting(
|
|||||||
else
|
else
|
||||||
end_pos = curwin->w_cursor; // shutup gcc 4
|
end_pos = curwin->w_cursor; // shutup gcc 4
|
||||||
|
|
||||||
|
// Disable 'hlsearch' highlighting if the pattern matches everything.
|
||||||
|
// Avoids a flash when typing "foo\|".
|
||||||
|
if (!use_last_pat)
|
||||||
|
{
|
||||||
|
next_char = ccline.cmdbuff[skiplen + patlen];
|
||||||
|
ccline.cmdbuff[skiplen + patlen] = NUL;
|
||||||
|
if (empty_pattern(ccline.cmdbuff))
|
||||||
|
set_no_hlsearch(TRUE);
|
||||||
|
ccline.cmdbuff[skiplen + patlen] = next_char;
|
||||||
|
}
|
||||||
|
|
||||||
validate_cursor();
|
validate_cursor();
|
||||||
// May redraw the status line to show the cursor position.
|
// May redraw the status line to show the cursor position.
|
||||||
if (p_ru && curwin->w_status_height > 0)
|
if (p_ru && curwin->w_status_height > 0)
|
||||||
|
9
src/testdir/dumps/Test_incsearch_search_01.dump
Normal file
9
src/testdir/dumps/Test_incsearch_search_01.dump
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |1| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |2| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |3| @64
|
||||||
|
|f+1&&|o|o+0&&| |4| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |5| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |6| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |7| @64
|
||||||
|
|f+0&#ffff4012|o|o+0&#ffffff0| |8| @64
|
||||||
|
|/|f|o> @66
|
9
src/testdir/dumps/Test_incsearch_search_02.dump
Normal file
9
src/testdir/dumps/Test_incsearch_search_02.dump
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
|f+0&#ffffff0|o@1| |1| @64
|
||||||
|
|f|o@1| |2| @64
|
||||||
|
|f|o+1&&|o+0&&| |3| @64
|
||||||
|
|f|o@1| |4| @64
|
||||||
|
|f|o@1| |5| @64
|
||||||
|
|f|o@1| |6| @64
|
||||||
|
|f|o@1| |7| @64
|
||||||
|
|f|o@1| |8| @64
|
||||||
|
|/|\|v> @66
|
@@ -813,6 +813,41 @@ func Test_incsearch_scrolling()
|
|||||||
call delete('Xscript')
|
call delete('Xscript')
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_incsearch_search_dump()
|
||||||
|
if !exists('+incsearch')
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
if !CanRunVimInTerminal()
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
call writefile([
|
||||||
|
\ 'set incsearch hlsearch scrolloff=0',
|
||||||
|
\ 'for n in range(1, 8)',
|
||||||
|
\ ' call setline(n, "foo " . n)',
|
||||||
|
\ 'endfor',
|
||||||
|
\ '3',
|
||||||
|
\ ], 'Xis_search_script')
|
||||||
|
let buf = RunVimInTerminal('-S Xis_search_script', {'rows': 9, 'cols': 70})
|
||||||
|
" Give Vim a chance to redraw to get rid of the spaces in line 2 caused by
|
||||||
|
" the 'ambiwidth' check.
|
||||||
|
sleep 100m
|
||||||
|
|
||||||
|
" Need to send one key at a time to force a redraw.
|
||||||
|
call term_sendkeys(buf, '/fo')
|
||||||
|
sleep 100m
|
||||||
|
call VerifyScreenDump(buf, 'Test_incsearch_search_01', {})
|
||||||
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
|
sleep 100m
|
||||||
|
|
||||||
|
call term_sendkeys(buf, '/\v')
|
||||||
|
sleep 100m
|
||||||
|
call VerifyScreenDump(buf, 'Test_incsearch_search_02', {})
|
||||||
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
|
|
||||||
|
call StopVimInTerminal(buf)
|
||||||
|
call delete('Xis_search_script')
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_incsearch_substitute()
|
func Test_incsearch_substitute()
|
||||||
if !exists('+incsearch')
|
if !exists('+incsearch')
|
||||||
return
|
return
|
||||||
@@ -926,7 +961,7 @@ func Test_incsearch_substitute_dump()
|
|||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
" Similar to Test_incsearch_substitute_dump() for :sort
|
" Similar to Test_incsearch_substitute_dump() for :sort
|
||||||
func Test_incsearch_ssort_dump()
|
func Test_incsearch_sort_dump()
|
||||||
if !exists('+incsearch')
|
if !exists('+incsearch')
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
@@ -794,6 +794,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
321,
|
||||||
/**/
|
/**/
|
||||||
320,
|
320,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user