mirror of
https://github.com/neovim/neovim.git
synced 2026-05-04 21:15:09 +00:00
highlight: Added QuickFixLine highlight group
- 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
This commit is contained in:
196
test/functional/ui/quickfix_spec.lua
Normal file
196
test/functional/ui/quickfix_spec.lua
Normal file
@@ -0,0 +1,196 @@
|
||||
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)
|
||||
Reference in New Issue
Block a user