Vim 使用非标准配色方案突出显示80多个字符
在vim中,我试图让它在超过80个字符时突出显示我的屏幕(我是内核开发人员,这是内核代码的要求)。我在.vimrc文件中使用以下命令来完成此操作Vim 使用非标准配色方案突出显示80多个字符,vim,coding-style,Vim,Coding Style,在vim中,我试图让它在超过80个字符时突出显示我的屏幕(我是内核开发人员,这是内核代码的要求)。我在.vimrc文件中使用以下命令来完成此操作 highlight OverLength ctermbg=red ctermfg=white guibg=#59292 match OverLength /\%81v.\+/ 这里有人建议: 但是,我是色盲,因此我无法使用默认的配色方案并在屏幕上看到文本,因此我也使用:colorscheme torte更改默认配色方案。但是,colorscheme似
highlight OverLength ctermbg=red ctermfg=white guibg=#59292
match OverLength /\%81v.\+/
这里有人建议:
但是,我是色盲,因此我无法使用默认的配色方案并在屏幕上看到文本,因此我也使用:colorscheme torte
更改默认配色方案。但是,colorscheme似乎覆盖了对我的高亮显示(当我没有指定colorscheme时,它会很好地高亮显示,当它被指定时,它也不会高亮显示)
有人对如何使用
colorscheme
更改来实现这一点有什么想法吗?感谢您的帮助,如果您有Vim 7.3+,您可以使用:
:set colorcolumn=81
这是因为大多数配色方案的开头都有这样一行:
hi clear
这将清除所有创建的突出显示组(您创建的超长组)。这是很好的,因为没有一个配色方案可以设置所有的东西,并且使用的前一个方案中的颜色可以保持显示
要解决此问题,不要创建新组,而是将此模式匹配为默认Vim组,它将出现在每个配色方案中。只需将两行代码更改为一行:
match Error /\%81v.\+/
您可以使用
Colorscheme
事件定义超长组:
augroup AddOverLength
autocmd!
autocmd ColorScheme * :highlight OverLength ctermbg=red ctermfg=white guibg=#59292
augroup END
注意,在此定义之后,您必须将在vimrc中发生的对
:colorscheme
的所有调用放入,或者使用:doautocmd AddOverLength colorscheme
明确启动此事件。这真是太好了,从来都不知道。我总是创建突出显示匹配,这是处理对齐文本的更好方法+这将是我和这个答案之间的优先选择。这一列很容易设置,但是只有一列突出显示(没有什么是a:set cc=80,81,82,83,84,85
无法解决的:-)。是的。。。我之前看到过这个解决方案,但我有7.2,我还不应该在工作中升级它。谢谢你的帮助@sidyll您还可以使用与“textwidth”相关的数字<代码>设置颜色列=+1、+2、+3。有关更多信息,请参见:h'cc'
。为我修复了它。多谢各位much@sidyll,在创建拆分窗口时,高亮显示不知怎的消失了。@vrybas我不确定我是否理解它。是垂直分割吗?请考虑单独提出问题;