vim版本6.3
尝试创建一个新的高亮组来突出选项卡和尾随空格.我在.vimrc中只有这些设置.
autocmd ColorScheme * highlight UnwanttedTab ctermbg=red guibg=darkred match UnwanttedTab /\t/ autocmd ColorScheme * highlight TrailSpace guibg=red ctermbg=darkred match TrailSpace / \+$/ colorscheme torte
但是当启动vim时,我会收到如下错误信息:
line 1: E216: No such group or event: ColorScheme * highlight UnwanttedTab ctermbg=red guibg=darkred line 2: E28: No such highlight group name: UnwanttedTab /\t/ line 3: E216: No such group or event: ColorScheme * highlight TrailSpace guibg=red ctermbg=darkred line 4: E28: No such highlight group name: TrailSpace / \+$/
我正在关注这个guide,并使用autocmd来防止我的高亮设置被清除.但仍然无法上班.有谁知道可能是错的?
您的代码的问题是匹配命令引用尚未定义的自定义高亮组名称.这些组名必须使用例如在使用它们与匹配之前突出显示UnwanttedTab ….在您加载任何colorscheme之后,autocmds只会使用高亮度定义高亮组名称.
这是一种设置高亮组的方法,首先使用组名定义语法高亮,然后为这些组名提供匹配:
highlight UnwanttedTab ctermbg=red guibg=darkred highlight TrailSpace guibg=red ctermbg=darkred match UnwanttedTab /\t/ match TrailSpace / \+$/
本文中的autocmd建议旨在防止您可能通过以下方式加载清除自定义突出显示组的任何颜色:突出显示.
尝试将上述命令与autocmd相结合,在.vimrc中:
highlight UnwanttedTab ctermbg=red guibg=darkred highlight TrailSpace guibg=red ctermbg=darkred match UnwanttedTab /\t/ match TrailSpace / \+$/ autocmd ColorScheme * highlight UnwanttedTab ctermbg=red guibg=darkred autocmd ColorScheme * highlight TrailSpace guibg=red ctermbg=darkred colorscheme torte