diff options
author | Bram Moolenaar <Bram@vim.org> | 2019-09-15 19:09:42 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2019-09-15 19:09:42 +0200 |
commit | e00fdf35d069de4effe07125333bb9ff35b1915d (patch) | |
tree | 7aefb8a4871c3a3f0e15ea131db2d91ab9f1a6bd /src | |
parent | 8ae54375cad51c3c05b7bb5600305062a1ebad1c (diff) | |
download | vim-git-e00fdf35d069de4effe07125333bb9ff35b1915d.tar.gz |
patch 8.1.2040: no highlighting of current line in quickfix windowv8.1.2040
Problem: No highlighting of current line in quickfix window.
Solution: Combine with line_attr.
Diffstat (limited to 'src')
-rw-r--r-- | src/screen.c | 8 | ||||
-rw-r--r-- | src/testdir/dumps/Test_quickfix_cwindow_1.dump | 12 | ||||
-rw-r--r-- | src/testdir/dumps/Test_quickfix_cwindow_2.dump | 12 | ||||
-rw-r--r-- | src/testdir/test_quickfix.vim | 26 | ||||
-rw-r--r-- | src/version.c | 2 |
5 files changed, 58 insertions, 2 deletions
diff --git a/src/screen.c b/src/screen.c index 22b26b472..4d976fd68 100644 --- a/src/screen.c +++ b/src/screen.c @@ -4763,14 +4763,18 @@ win_line( comb_attr, cul_attr); else #endif + if (line_attr) + char_attr = hl_combine_attr( + comb_attr, line_attr); + else char_attr = comb_attr; } else char_attr = hl_combine_attr(comb_attr, char_attr); } # ifdef FEAT_CONCEAL - /* no concealing past the end of the line, it interferes - * with line highlighting */ + // no concealing past the end of the line, it interferes + // with line highlighting if (c == NUL) syntax_flags = 0; else diff --git a/src/testdir/dumps/Test_quickfix_cwindow_1.dump b/src/testdir/dumps/Test_quickfix_cwindow_1.dump new file mode 100644 index 000000000..ef153f908 --- /dev/null +++ b/src/testdir/dumps/Test_quickfix_cwindow_1.dump @@ -0,0 +1,12 @@ +|s+0&#ffffff0|o|m|e| @70 +|t|e|x|t| @70 +|w|i|t|h| @70 +|m|a|t|c|h|e|s| @67 +|~+0#4040ff13&| @73 +|X+1#0000000&|C|w|i|n|d|o|w| @48|1|,|4| @11|A|l@1 +>X+0#0000e05#ffff4012|C|w|i|n|d|o|w||+0#0000000&|1+0#af5f00255&| |c|o|l| |4||+0#0000000&| |s|o|m|e| @52 +|X+0#0000e05#ffffff0|C|w|i|n|d|o|w||+0#0000000&|2+0#af5f00255&| |c|o|l| |2||+0#0000000&| |t|e|x|t| @52 +|X+0#0000e05&|C|w|i|n|d|o|w||+0#0000000&|4+0#af5f00255&| |c|o|l| |6||+0#0000000&| |m|a|t|c|h|e|s| @49 +|~+0#4040ff13&| @73 +|[+3#0000000&|Q|u|i|c|k|f|i|x| |L|i|s|t|]| |:|v|i|m|g|r|e|p| |e| |X|C|w|i|n|d|o|w| @20|1|,|1| @12|A|l@1 +| +0&&@74 diff --git a/src/testdir/dumps/Test_quickfix_cwindow_2.dump b/src/testdir/dumps/Test_quickfix_cwindow_2.dump new file mode 100644 index 000000000..4c87ca053 --- /dev/null +++ b/src/testdir/dumps/Test_quickfix_cwindow_2.dump @@ -0,0 +1,12 @@ +|s+0&#ffffff0|o|m|e| @70 +|t>e|x|t| @70 +|w|i|t|h| @70 +|m|a|t|c|h|e|s| @67 +|~+0#4040ff13&| @73 +|X+3#0000000&|C|w|i|n|d|o|w| @48|2|,|2| @11|A|l@1 +|X+0#0000e05&|C|w|i|n|d|o|w||+0#0000000&|1+0#af5f00255&| |c|o|l| |4||+0#0000000&| |s|o|m|e| @52 +|X+0#0000e05#ffff4012|C|w|i|n|d|o|w||+0#0000000&|2+0#af5f00255&| |c|o|l| |2||+0#0000000&| |t|e|x|t| @52 +|X+0#0000e05#ffffff0|C|w|i|n|d|o|w||+0#0000000&|4+0#af5f00255&| |c|o|l| |6||+0#0000000&| |m|a|t|c|h|e|s| @49 +|~+0#4040ff13&| @73 +|[+1#0000000&|Q|u|i|c|k|f|i|x| |L|i|s|t|]| |:|v|i|m|g|r|e|p| |e| |X|C|w|i|n|d|o|w| @20|2|,|1| @12|A|l@1 +|:+0&&|c|n|e|x|t| @68 diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim index f2403986b..e0ab2b3aa 100644 --- a/src/testdir/test_quickfix.vim +++ b/src/testdir/test_quickfix.vim @@ -3,6 +3,8 @@ source check.vim CheckFeature quickfix +source screendump.vim + set encoding=utf-8 func s:setup_commands(cchar) @@ -2428,6 +2430,30 @@ func Test_cwindow_jump() set efm&vim endfunc +func Test_cwindow_highlight() + CheckScreendump + + let lines =<< trim END + set t_u7= + call setline(1, ['some', 'text', 'with', 'matches']) + write XCwindow + vimgrep e XCwindow + redraw + cwindow 4 + END + call writefile(lines, 'XtestCwindow') + let buf = RunVimInTerminal('-S XtestCwindow', #{rows: 12}) + call VerifyScreenDump(buf, 'Test_quickfix_cwindow_1', {}) + + call term_sendkeys(buf, ":cnext\<CR>") + call VerifyScreenDump(buf, 'Test_quickfix_cwindow_2', {}) + + " clean up + call StopVimInTerminal(buf) + call delete('XtestCwindow') + call delete('XCwindow') +endfunc + func XvimgrepTests(cchar) call s:setup_commands(a:cchar) diff --git a/src/version.c b/src/version.c index a2f64177a..bf0d350d7 100644 --- a/src/version.c +++ b/src/version.c @@ -758,6 +758,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 2040, +/**/ 2039, /**/ 2038, |