改变vim合成错误窗口的颜色

时间:2015-05-28 08:35:43

标签: vim syntastic

我在VIM上安装了syntastic来帮助我显示PHP代码中的错误,但是使用当前的colorscheme /设置我必须遵循以下颜色: error line

正如你所看到的那样,它非常难以阅读,我想知道是否有办法在特定的错误窗口中更改颜色。

2 个答案:

答案 0 :(得分:6)

如果这仅适用于quickfix窗口中当前选定的项目,则该Search突出显示组位于正常的quickfix突出显示之上。然后你必须改变其中一个; Search组也会影响其他窗口中的搜索结果。

如果这是其他/特殊的Syntastic突出显示,您最好查看:hi输出中的所有组以查找错误的组。

重写

除非您想完全切换颜色方案,否则可以在:highlight中的:colorscheme命令之后通过~/.vimrc命令调整各个突出显示组。 :hi link到另一个预定义的组,或提供您自己的ctermfg=... guifg=...等颜色定义,如:help highlight-args所述。

答案 1 :(得分:4)

Syntastic不会改变(也不关心)突出显示错误窗口。它是一个普通的quickfix窗口,文件类型为qf。查看syntax/qf.vim,默认突出显示为:

syn match   qfFileName      "^[^|]*" nextgroup=qfSeparator
syn match   qfSeparator     "|" nextgroup=qfLineNr contained
syn match   qfLineNr        "[^|]*" contained contains=qfError
syn match   qfError         "error" contained

hi def link qfFileName      Directory
hi def link qfLineNr        LineNr
hi def link qfError         Error

因此,如果您看到quickfix窗口的颜色与主文本不同,那是因为您的配色方案特别希望它看起来那样。您可以覆盖qfFileNameqfSeparatorqfLineNrqfError的突出显示以使其更具可读性,但更好的解决方案IMO将使用较少损坏的颜色方案。

修改:Vim 8.0.641及更高版本有QuickFixLine