aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2023-04-11 16:51:31 +0800
committerGitHub <noreply@github.com>2023-04-11 16:51:31 +0800
commitdcaf2073369c672655722472aa4e7bcba7757f4c (patch)
tree01f446eb1d57774f1c7fd40a78290f390e897406
parentccc0980f86c6ef9a86b0e5a3a691f37cea8eb776 (diff)
downloadrneovim-dcaf2073369c672655722472aa4e7bcba7757f4c.tar.gz
rneovim-dcaf2073369c672655722472aa4e7bcba7757f4c.tar.bz2
rneovim-dcaf2073369c672655722472aa4e7bcba7757f4c.zip
fix(highlight): combine ColorColumn with low-priority CursorLine (#23017)
-rw-r--r--src/nvim/drawline.c2
-rw-r--r--test/functional/ui/highlight_spec.lua21
2 files changed, 21 insertions, 2 deletions
diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c
index fcac837993..27e1632559 100644
--- a/src/nvim/drawline.c
+++ b/src/nvim/drawline.c
@@ -2668,7 +2668,7 @@ int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool nochange,
if (wp->w_p_cuc && VCOL_HLC == (long)wp->w_virtcol) {
col_attr = cuc_attr;
} else if (draw_color_col && VCOL_HLC == *color_cols) {
- col_attr = mc_attr;
+ col_attr = hl_combine_attr(wlv.line_attr_lowprio, mc_attr);
}
col_attr = hl_combine_attr(col_attr, wlv.line_attr);
diff --git a/test/functional/ui/highlight_spec.lua b/test/functional/ui/highlight_spec.lua
index fedfaca7ba..89b503141b 100644
--- a/test/functional/ui/highlight_spec.lua
+++ b/test/functional/ui/highlight_spec.lua
@@ -1411,10 +1411,10 @@ describe('ColorColumn highlight', function()
[3] = {foreground = Screen.colors.Brown}, -- LineNr
[4] = {foreground = Screen.colors.Brown, bold = true}, -- CursorLineNr
[5] = {foreground = Screen.colors.Blue, bold = true}, -- NonText
- -- NonText and ColorColumn
[6] = {foreground = Screen.colors.Blue, background = Screen.colors.LightRed, bold = true},
[7] = {reverse = true, bold = true}, -- StatusLine
[8] = {reverse = true}, -- StatusLineNC
+ [9] = {background = Screen.colors.Grey90, foreground = Screen.colors.Red},
})
screen:attach()
end)
@@ -1500,6 +1500,25 @@ describe('ColorColumn highlight', function()
|
]])
end)
+
+ it('is combined with low-priority CursorLine highlight #23016', function()
+ screen:try_resize(40, 2)
+ command('set colorcolumn=30 cursorline')
+ screen:expect([[
+ {2:^ }{1: }{2: }|
+ |
+ ]])
+ command('hi clear ColorColumn')
+ screen:expect([[
+ {2:^ }|
+ |
+ ]])
+ command('hi ColorColumn guifg=Red')
+ screen:expect([[
+ {2:^ }{9: }{2: }|
+ |
+ ]])
+ end)
end)
describe("MsgSeparator highlight and msgsep fillchar", function()