aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthieu Coudron <teto@users.noreply.github.com>2021-03-23 14:01:57 +0100
committerGitHub <noreply@github.com>2021-03-23 14:01:57 +0100
commita1a0bc618f02a61c2964e22015ff73520e1d10d8 (patch)
tree7790380bd5feee6f1dea097a63a9125a340d0e24
parent3e5efa50b689955beb36ce9f8cca7138fd5f0f8e (diff)
parente0d0e46cf2900a6c2d3a0d4b71a9422201b4797b (diff)
downloadrneovim-a1a0bc618f02a61c2964e22015ff73520e1d10d8.tar.gz
rneovim-a1a0bc618f02a61c2964e22015ff73520e1d10d8.tar.bz2
rneovim-a1a0bc618f02a61c2964e22015ff73520e1d10d8.zip
Merge pull request #14190 from teto/fix-cursorlinenr
fix CursorLineNr with diff
-rw-r--r--src/nvim/screen.c3
-rw-r--r--test/functional/ui/diff_spec.lua20
2 files changed, 22 insertions, 1 deletions
diff --git a/src/nvim/screen.c b/src/nvim/screen.c
index d50520f49e..0334a808f4 100644
--- a/src/nvim/screen.c
+++ b/src/nvim/screen.c
@@ -2758,7 +2758,8 @@ static int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow,
// :sign defined with "numhl" highlight.
char_attr = sign_get_attr(num_sign, SIGN_NUMHL);
} else if ((wp->w_p_cul || wp->w_p_rnu)
- && lnum == wp->w_cursor.lnum) {
+ && lnum == wp->w_cursor.lnum
+ && filler_todo == 0) {
// When 'cursorline' is set highlight the line number of
// the current line differently.
// TODO(vim): Can we use CursorLine instead of CursorLineNr
diff --git a/test/functional/ui/diff_spec.lua b/test/functional/ui/diff_spec.lua
index 69b6ab8cf0..a8d9fb02fc 100644
--- a/test/functional/ui/diff_spec.lua
+++ b/test/functional/ui/diff_spec.lua
@@ -1049,6 +1049,8 @@ it('diff updates line numbers below filler lines', function()
[9] = {background = Screen.colors.LightMagenta},
[10] = {bold = true, foreground = Screen.colors.Brown},
[11] = {foreground = Screen.colors.Brown},
+ [12] = {foreground = Screen.colors.Brown, bold = true, background = Screen.colors.Red};
+ [13] = {background = Screen.colors.Gray90};
})
source([[
call setline(1, ['a', 'a', 'a', 'y', 'b', 'b', 'b', 'b', 'b'])
@@ -1107,4 +1109,22 @@ it('diff updates line numbers below filler lines', function()
{3:[No Name] [+] }{7:[No Name] [+] }|
|
]])
+ command("set signcolumn number tgc cursorline")
+ command("hi CursorLineNr guibg=red")
+ screen:expect{grid=[[
+ {1: }a {3:│}{11: 2 }a |
+ {1: }a {3:│}{11: 1 }a |
+ {1: }a {3:│}{12:3 }{13:^a }|
+ {1: }{8:x}{9: }{3:│}{11: 1 }{8:y}{9: }|
+ {1: }{4:x }{3:│}{11: }{2:----------------}|
+ {1: }{4:x }{3:│}{11: }{2:----------------}|
+ {1: }b {3:│}{11: 2 }b |
+ {1: }b {3:│}{11: 3 }b |
+ {1: }b {3:│}{11: 4 }b |
+ {1: }b {3:│}{11: 5 }b |
+ {1: }b {3:│}{11: 6 }b |
+ {6:~ }{3:│}{6:~ }|
+ {3:[No Name] [+] }{7:[No Name] [+] }|
+ signcolumn=auto |
+ ]]}
end)