我使用 Vim 编辑带有嵌入宏的 HTML,其中宏用双尖括号括起来,例如“<>”。 Vim 的标准 HTML 突出显示将第二个“<”和“>”视为错误,并如此突出显示它们。我怎样才能防止这种情况发生?我很乐意教 $VIMHOME/syntax/html.vim 双尖括号可以,或者简单地禁用错误突出显示,但我不知道如何做其中之一。 (“highlight clear htmlTagError”没有任何效果。事实上,“highlightclear”在 HTML 缓冲区中没有任何效果。)
最佳答案
如果您想在宏中引入完整的语法突出显示,最简单的方法是从像 htmldjango
这样的语法文件开始。 ( $VIMRUNTIME/syntax/htmldjango.vim
,然后使用同一目录中的 html.vim
和 django.vim
);其中{{ ... }}
有特殊含义。 , 除其他事项外。你想要它是一样的,但是用 <<
和>>
作为你的分隔符。
仅突出显示 << ... >>
特别是,您需要这样的语法行:
syntax region mylangMacro start="<<" end=">>" containedin=ALLBUT,mylangMacro
然后您可以使用以下方式突出显示它:
highlight default link mylangMacro Macro
这可以输入 ~/.vim/after/syntax/html.vim
或者可以按照 htmldjango
的风格完成作为新的语法荧光笔(这将是我的首选方法;然后您可以使 HTML 文件通过 autocmd 使用这个新的语法文件)。
(您还可以使用 syntax clear htmlTagError
删除错误突出显示,这将位于相同的位置。但希望您会认为单独突出显示比仅仅删除错误更好。)
关于html - 如何禁用 Vim 的 HTML 错误突出显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10693207/