VIM编码错误强调合成

时间:2015-11-26 09:42:33

标签: vim syntastic

我对VIM有点新意,我还在学习它。我想在大多数IDE中实现类似的功能,以使VIM用某种颜色强调我的错误(例如红色)。

我发现了合成,因为每个人都推荐它。我安装了它,它正常工作"正确"我猜,但我没有看到任何错误突出显示,也没有下划线。我有"默认设置"我的.vimrc中的内容:

set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 0
let g:syntastic_check_on_wq = 0

我还添加了

let g:syntastic_enable_signs=1

仍然没有亮点,没有错误的下划线。我通常在python中编码,所以这就是我想看到的:

class some_calass(self)
    self.somevar = 0

并高调/强调"班级"因为我忘记了":"在末尾。

如果我使用

:SyntasticCheck

我在新的拆分标签中得到了正常的Syntastic窗口,其中包含相应的错误,以及"标尺"弹出左侧红色">>"错误的标记,但我想避免它们两者,这就是我关闭

的原因
let g:syntastic_check_on_open = 0

选项。我只想在错误中使用突出显示/下划线功能。

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

错误位于class行的末尾,并且在结束括号后,syntastic会突出显示单个字符。如果您希望突出显示整行,您可以执行以下操作:

highlight link SyntasticErrorLine error
highlight link SyntasticWarningLine todo

Syntastic并不关心文件的内容,只有外部检查器才能这样做。并非所有这些检查器都返回足够的信息来进行合成,以有意义的方式突出显示错误,即使这样做,合成器也不知道如何解析可能相关的所有信息。大多数情况下,syntaly只会突出显示上面的单个字符,或者根本不突出显示任何字符。您可以制作标志(即阴沟边缘的东西),如果您愿意,可以突出显示他们所放置的线条,这是Vim的功能,但是不能提供有关该信息的信息。错误比合成更精确。

有关您可以调整的内容的详细信息,请参阅:h syntastic-error-signs:h syntastic-highlighting