如何禁用 Vim 的 HTML 错误突出显示?

Posted

技术标签:

【中文标题】如何禁用 Vim 的 HTML 错误突出显示?【英文标题】:How can I disable Vim's HTML error highlighting? 【发布时间】:2012-05-21 21:55:37 【问题描述】:

我使用 Vim 编辑带有嵌入宏的 html,其中宏用双尖括号括起来,例如,“”。 Vim 的标准 HTML 高亮显示将第二个 "" 视为错误,并将它们高亮显示。我怎样才能防止这种情况?我很乐意教 $VIMHOME/syntax/html.vim 双尖括号是可以的,或者只是禁用错误突出显示,但我不确定如何做任何一个。 (“highlight clear htmlTagError”无效。实际上,“highlight clear”在 HTML 缓冲区中无效。)

【问题讨论】:

是的,这是权宜之计,但我希望能做得更好。我一直在阅读 Vim 中的语法高亮,但 html.vim 比我目前看到的简单示例要复杂得多。 【参考方案1】:

如果您想在宏中引入完整的语法突出显示,最简单的方法是从 htmldjango 之类的语法文件开始($VIMRUNTIME/syntax/htmldjango.vim,然后使用同一目录中的 html.vimdjango.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 删除错误突出显示,这将处于相同的位置。但希望您会认为单独突出显示比仅删除错误更好。)

【讨论】:

@user1408884:如果这是你需要的,记得接受答案。【参考方案2】:

以下是在 Vim 中编辑现有语法高亮的说明:

http://vimdoc.sourceforge.net/htmldoc/syntax.html#mysyntaxfile-add

Unix/Linux 的 vim 运行时路径:

                   $HOME/.vim,
                    $VIM/vimfiles,
                    $VIMRUNTIME,
                    $VIM/vimfiles/after,
                    $HOME/.vim/after

在您的 vim 运行时路径中创建一个名为“after/syntax”的目录。

Unix/Linux 的命令:

mkdir ~/.vim/after
mkdir ~/.vim/after/syntax

    编写一个包含您要使用的命令的 Vim 脚本。例如,要更改 C 语法的颜色:highlight cComment ctermfg=绿色 guifg=绿色

    将该文件写入“after/syntax”目录。使用语法名称,并添加“.vim”。对于我们的 C 语法::w ~/.vim/after/syntax/c.vim

就是这样。下次编辑 C 文件时,注释颜色将为 不同的。你甚至不必重新启动 Vim。

如果你有多个文件,你可以使用文件类型作为目录 姓名。将使用此目录中的所有 "*.vim" 文件,例如 例如:~/.vim/after/syntax/c/one.vim ~/.vim/after/syntax/c/two.vim

或者,您可以采用更简单的方法并在 Nano 命令行编辑器中使用语法突出显示,您可以使用正则表达式轻松定义自己的语法:

http://how-to.wikia.com/wiki/How_to_use_syntax_highlighting_with_the_GNU_nano_text_editor

【讨论】:

以上是关于如何禁用 Vim 的 HTML 错误突出显示?的主要内容,如果未能解决你的问题,请参考以下文章

如何更改 Vim 拼写检查中的突出显示样式?

如何完全禁用 JTextPane 的文本突出显示?

如何在 vscode 中禁用更漂亮的错误突出显示

如何切换 Vim 的搜索高亮可见性而不禁用它

如何关闭 Vim 搜索突出显示

如何禁用 UITableViewCell 突出显示?