mirror of
https://github.com/neovim/neovim.git
synced 2024-12-26 14:11:15 -07:00
605e74327a
- Links to Search by default screen.c: Combine CursorLine with QuickFixLine - HLF_QFL takes priority over HLF_CUL docs: Updated to mention QuickFixLine runtime: Added QuickFixLine to nvimHLGroup tests: QuickFixLine highlight
197 lines
5.5 KiB
Lua
197 lines
5.5 KiB
Lua
local helpers = require('test.functional.helpers')(after_each)
|
|
local Screen = require('test.functional.ui.screen')
|
|
local clear, feed, meths = helpers.clear, helpers.feed, helpers.meths
|
|
local insert, execute = helpers.insert, helpers.execute
|
|
|
|
|
|
describe('quickfix selection highlight', function()
|
|
local screen
|
|
|
|
before_each(function()
|
|
clear()
|
|
|
|
screen = Screen.new(25, 10)
|
|
screen:attach()
|
|
screen:set_default_attr_ids({
|
|
[1] = { bold = true, foreground = Screen.colors.Blue },
|
|
[2] = {reverse = true},
|
|
[3] = {foreground = Screen.colors.Brown},
|
|
[4] = {bold = true, reverse = true},
|
|
[5] = {background = Screen.colors.Green},
|
|
[6] = {foreground = Screen.colors.Brown, background = Screen.colors.Green},
|
|
[7] = {background = Screen.colors.Red},
|
|
[8] = {foreground = Screen.colors.Brown, background = Screen.colors.Red},
|
|
[9] = {background = Screen.colors.Fuchsia},
|
|
[10] = {foreground = Screen.colors.Red, background = Screen.colors.Fuchsia},
|
|
[11] = {foreground = Screen.colors.Red},
|
|
[12] = {foreground = Screen.colors.Brown, background = Screen.colors.Fuchsia},
|
|
})
|
|
|
|
meths.set_option('errorformat', '%m %l')
|
|
execute('syntax on')
|
|
execute('highlight Search guibg=Green')
|
|
|
|
insert([[
|
|
Line 1
|
|
Line 2
|
|
Line 3
|
|
Line 4
|
|
Line 5
|
|
]])
|
|
|
|
execute('cad')
|
|
feed('gg')
|
|
|
|
screen:expect([[
|
|
^Line 1 |
|
|
Line 2 |
|
|
Line 3 |
|
|
Line 4 |
|
|
Line 5 |
|
|
|
|
|
{1:~ }|
|
|
{1:~ }|
|
|
{1:~ }|
|
|
:cad |
|
|
]])
|
|
end)
|
|
|
|
it('using default Search highlight group', function()
|
|
execute('copen')
|
|
|
|
screen:expect([[
|
|
Line 1 |
|
|
{2:[No Name] [+] }|
|
|
{5:^|}{6:1}{5:| Line }|
|
|
|{3:2}| Line |
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
|
|
execute('cnext')
|
|
|
|
screen:expect([[
|
|
Line 1 |
|
|
{2:[No Name] [+] }|
|
|
|{3:1}| Line |
|
|
{5:^|}{6:2}{5:| Line }|
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:cnext |
|
|
]])
|
|
end)
|
|
|
|
it('using QuickFixLine highlight group', function()
|
|
execute('highlight QuickFixLine guibg=Red')
|
|
|
|
execute('copen')
|
|
|
|
screen:expect([[
|
|
Line 1 |
|
|
{2:[No Name] [+] }|
|
|
{7:^|}{8:1}{7:| Line }|
|
|
|{3:2}| Line |
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
|
|
execute('cnext')
|
|
|
|
screen:expect([[
|
|
Line 1 |
|
|
{2:[No Name] [+] }|
|
|
|{3:1}| Line |
|
|
{7:^|}{8:2}{7:| Line }|
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:cnext |
|
|
]])
|
|
end)
|
|
|
|
it('combines with CursorLine', function()
|
|
execute('set cursorline')
|
|
execute('highlight QuickFixLine guifg=Red')
|
|
execute('highlight CursorLine guibg=Fuchsia')
|
|
|
|
execute('copen')
|
|
|
|
screen:expect([[
|
|
{9:Line 1 }|
|
|
{2:[No Name] [+] }|
|
|
{10:^|1| Line }|
|
|
|{3:2}| Line |
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
|
|
feed('j')
|
|
|
|
screen:expect([[
|
|
{9:Line 1 }|
|
|
{2:[No Name] [+] }|
|
|
{11:|1| Line }|
|
|
{9:^|}{12:2}{9:| Line }|
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
end)
|
|
|
|
it('QuickFixLine background takes precedence over CursorLine', function()
|
|
execute('set cursorline')
|
|
execute('highlight QuickFixLine guibg=Red')
|
|
execute('highlight CursorLine guibg=Fuchsia')
|
|
|
|
execute('copen')
|
|
|
|
screen:expect([[
|
|
{9:Line 1 }|
|
|
{2:[No Name] [+] }|
|
|
{7:^|}{8:1}{7:| Line }|
|
|
|{3:2}| Line |
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
|
|
feed('j')
|
|
|
|
screen:expect([[
|
|
{9:Line 1 }|
|
|
{2:[No Name] [+] }|
|
|
{7:|}{8:1}{7:| Line }|
|
|
{9:^|}{12:2}{9:| Line }|
|
|
|{3:3}| Line |
|
|
|{3:4}| Line |
|
|
|{3:5}| Line |
|
|
|| |
|
|
{4:[Quickfix List] }|
|
|
:copen |
|
|
]])
|
|
end)
|
|
end)
|