mvim突出显示长文本偶尔的作品

时间:2009-10-22 16:22:18

标签: vim

我正在使用mvim。我的vimrc中有以下行。

"highlight text that goes over 80 columns
highlight OverLength ctermbg=red ctermfg=white guibg=#592929
match OverLength /\%81v.*/

有时在我的项目中,我会看到突出显示的额外字符,有时候我没有。我的意思是一旦vim显示额外的字符,它将继续显示额外的字符。但是,如果我退出vim并启动vim实例,它可能不会突出显示额外的字符。要解决这个问题,我输入

match OverLength /\%81v.*/

我很困惑为什么会这样。有些插件可能会搞乱这些设置吗?

2 个答案:

答案 0 :(得分:2)

插件可能通过设置自己的match来撤消它。您也可能正在创建一个新窗口。 match是每个窗口(不是每个缓冲区,而不是全局),因此它仅适用于执行match命令时处于活动状态的窗口。

您可以尝试创建autocmd以在新窗口上设置匹配:

au! WinEnter match OverLength /\%81v.*/

请注意,这不会在第一个窗口中执行。

答案 1 :(得分:0)

在MacVim 7.3(快照56)中使用新标签时,我遇到了同样的问题。当打开一个新窗口时突出显示有效,但是当我打开一个新的Tab时它不再起作用了。所以我将以下自动命令添加到我的.vimrc文件中:

autocmd BufWinEnter,BufRead * match OverLength /\%81v.\+/

现在它适用于我,在任何新窗口或标签和缓冲区。

我希望这会有所帮助!

相关问题