aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicky Zhou <ricky@rzhou.org>2018-08-26 21:23:59 -0700
committerRicky Zhou <ricky@rzhou.org>2018-09-03 03:13:03 -0700
commit6c3b0fb831da89aac679da69a0fd5df43c27af80 (patch)
tree2a81040bee25f4fa53983cf3adfe8b643782839f
parentf62d4865d88de0bd60218ecb3e08d9f3c772e12e (diff)
downloadrneovim-6c3b0fb831da89aac679da69a0fd5df43c27af80.tar.gz
rneovim-6c3b0fb831da89aac679da69a0fd5df43c27af80.tar.bz2
rneovim-6c3b0fb831da89aac679da69a0fd5df43c27af80.zip
vim-patch:8.1.0344: 'hlsearch' highlighting has a gap after /$
Problem: 'hlsearch' highlighting has a gap after /$. Solution: Remove suspicious code. (Ricky Zhou, closes vim/vim#3400) https://github.com/vim/vim/commit/7ee3f15b21042cb8148980ea486137eaf1b55bcd
-rw-r--r--src/nvim/screen.c8
-rw-r--r--src/nvim/testdir/test_hlsearch.vim14
2 files changed, 13 insertions, 9 deletions
diff --git a/src/nvim/screen.c b/src/nvim/screen.c
index 91840026a5..81911fb928 100644
--- a/src/nvim/screen.c
+++ b/src/nvim/screen.c
@@ -3916,14 +3916,6 @@ win_line (
* At end of the text line.
*/
if (c == NUL) {
- if (eol_hl_off > 0 && vcol - eol_hl_off == (long)wp->w_virtcol
- && lnum == wp->w_cursor.lnum) {
- /* highlight last char after line */
- --col;
- --off;
- --vcol;
- }
-
/* Highlight 'cursorcolumn' & 'colorcolumn' past end of the line. */
if (wp->w_p_wrap)
v = wp->w_skipcol;
diff --git a/src/nvim/testdir/test_hlsearch.vim b/src/nvim/testdir/test_hlsearch.vim
index 066fdd0250..1fc7b04f88 100644
--- a/src/nvim/testdir/test_hlsearch.vim
+++ b/src/nvim/testdir/test_hlsearch.vim
@@ -4,7 +4,6 @@ function! Test_hlsearch()
new
call setline(1, repeat(['aaa'], 10))
set hlsearch nolazyredraw
- let r=[]
" redraw is needed to make hlsearch highlight the matches
exe "normal! /aaa\<CR>" | redraw
let r1 = screenattr(1, 1)
@@ -32,3 +31,16 @@ function! Test_hlsearch()
call getchar(1)
enew!
endfunction
+
+func Test_hlsearch_eol_highlight()
+ new
+ call append(1, repeat([''], 9))
+ set hlsearch nolazyredraw
+ exe "normal! /$\<CR>" | redraw
+ let attr = screenattr(1, 1)
+ for row in range(2, 10)
+ call assert_equal(attr, screenattr(row, 1), 'in line ' . row)
+ endfor
+ set nohlsearch
+ bwipe!
+endfunc