mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
vim-patch:8.1.0284: 'cursorline' highlighting wrong with 'incsearch'
Problem: 'cursorline' highlighting wrong with 'incsearch'.
Solution: Move the cursor back if the match is outside the range.
2f6a346a4c
This commit is contained in:
parent
b24dabf266
commit
68f6abef16
@ -427,6 +427,7 @@ static void may_do_incsearch_highlighting(int firstc, long count,
|
|||||||
|| curwin->w_cursor.lnum > search_last_line) {
|
|| curwin->w_cursor.lnum > search_last_line) {
|
||||||
// match outside of address range
|
// match outside of address range
|
||||||
i = 0;
|
i = 0;
|
||||||
|
curwin->w_cursor = s->search_start;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if interrupted while searching, behave like it failed
|
// if interrupted while searching, behave like it failed
|
||||||
|
@ -614,6 +614,7 @@ func Test_incsearch_substitute_dump()
|
|||||||
\ 'for n in range(1, 10)',
|
\ 'for n in range(1, 10)',
|
||||||
\ ' call setline(n, "foo " . n)',
|
\ ' call setline(n, "foo " . n)',
|
||||||
\ 'endfor',
|
\ 'endfor',
|
||||||
|
\ 'call setline(11, "bar 11")',
|
||||||
\ '3',
|
\ '3',
|
||||||
\ ], 'Xis_subst_script')
|
\ ], 'Xis_subst_script')
|
||||||
let buf = RunVimInTerminal('-S Xis_subst_script', {'rows': 9, 'cols': 70})
|
let buf = RunVimInTerminal('-S Xis_subst_script', {'rows': 9, 'cols': 70})
|
||||||
@ -665,6 +666,20 @@ func Test_incsearch_substitute_dump()
|
|||||||
call VerifyScreenDump(buf, 'Test_incsearch_substitute_06', {})
|
call VerifyScreenDump(buf, 'Test_incsearch_substitute_06', {})
|
||||||
call term_sendkeys(buf, "\<Esc>")
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
|
|
||||||
|
" Cursorline highlighting at match
|
||||||
|
call term_sendkeys(buf, ":set cursorline\<CR>")
|
||||||
|
call term_sendkeys(buf, 'G9G')
|
||||||
|
call term_sendkeys(buf, ':9,11s/bar')
|
||||||
|
sleep 100m
|
||||||
|
call VerifyScreenDump(buf, 'Test_incsearch_substitute_07', {})
|
||||||
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
|
|
||||||
|
" Cursorline highlighting at cursor when no match
|
||||||
|
call term_sendkeys(buf, ':9,10s/bar')
|
||||||
|
sleep 100m
|
||||||
|
call VerifyScreenDump(buf, 'Test_incsearch_substitute_08', {})
|
||||||
|
call term_sendkeys(buf, "\<Esc>")
|
||||||
|
|
||||||
call StopVimInTerminal(buf)
|
call StopVimInTerminal(buf)
|
||||||
call delete('Xis_subst_script')
|
call delete('Xis_subst_script')
|
||||||
endfunc
|
endfunc
|
||||||
|
Loading…
Reference in New Issue
Block a user