更改 vim 合成错误 window 的颜色
Changing color of vim syntastic error window
我在 VIM 上安装了 syntastic 以帮助我显示 PHP 代码中的错误,但是对于当前的 colorscheme/setting 我必须使用以下颜色:
如您所见,它很难阅读,我想知道如果出现此错误 window,是否有办法更改颜色。
如果这仅适用于 quickfix window 中的当前选定项目,那就是正常 quickfix 突出显示顶部的 Search
突出显示组。然后你必须改变其中一个; Search
组也会影响其他 windows 中的搜索结果。
如果这是其他/特殊的 Syntastic 突出显示,您最好查看 :hi
输出中的所有组以找到错误的。
覆盖
除非您想完全切换您的配色方案,否则您可以通过 :highlight
命令调整各个突出显示组 在 :colorscheme
命令之后 ~/.vimrc
. :hi link
到另一个预定义组,或提供您自己的 ctermfg=... guifg=...
等颜色定义,如 :help highlight-args
所述。
Syntastic 不会更改(也不关心)错误的突出显示 window。这是一个普通的 quickfix
window,文件类型为 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
window 的颜色与正文不同,那是因为您的配色方案特别设计了它的外观。您可以覆盖 qfFileName
、qfSeparator
、qfLineNr
和 qfError
的突出显示以使其更具可读性,但 IMO 更好的解决方案是使用不那么破损的配色方案。
编辑: Vim 8.0.641 及更高版本有 QuickFixLine
.
我在 VIM 上安装了 syntastic 以帮助我显示 PHP 代码中的错误,但是对于当前的 colorscheme/setting 我必须使用以下颜色:
如您所见,它很难阅读,我想知道如果出现此错误 window,是否有办法更改颜色。
如果这仅适用于 quickfix window 中的当前选定项目,那就是正常 quickfix 突出显示顶部的 Search
突出显示组。然后你必须改变其中一个; Search
组也会影响其他 windows 中的搜索结果。
如果这是其他/特殊的 Syntastic 突出显示,您最好查看 :hi
输出中的所有组以找到错误的。
覆盖
除非您想完全切换您的配色方案,否则您可以通过 :highlight
命令调整各个突出显示组 在 :colorscheme
命令之后 ~/.vimrc
. :hi link
到另一个预定义组,或提供您自己的 ctermfg=... guifg=...
等颜色定义,如 :help highlight-args
所述。
Syntastic 不会更改(也不关心)错误的突出显示 window。这是一个普通的 quickfix
window,文件类型为 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
window 的颜色与正文不同,那是因为您的配色方案特别设计了它的外观。您可以覆盖 qfFileName
、qfSeparator
、qfLineNr
和 qfError
的突出显示以使其更具可读性,但 IMO 更好的解决方案是使用不那么破损的配色方案。
编辑: Vim 8.0.641 及更高版本有 QuickFixLine
.