我使用Vim编辑带有嵌入式宏的HTML,其中宏用双尖括号括起来,例如“<>”。 Vim的标准HTML突出显示第二个“<”和“>”作为错误,并突出显示它们。我怎么能阻止这个?我很乐意教$ VIMHOME / syntax / html.vim,双角括号可以,或者只是禁用错误突出显示,但我不知道如何做任何一个。 (“突出显示清除htmlTagError”没有效果。事实上,“突出显示清除”在HTML缓冲区中没有任何效果。)
答案 0 :(得分:3)
如果您想在宏中引入完整的语法突出显示,最简单的方法是使用htmldjango
($VIMRUNTIME/syntax/htmldjango.vim
等语法文件,然后使用html.vim
和{{ 1}}来自同一目录);其中,django.vim
中有特殊含义。您希望它一样,但{{ ... }}
和<<
是您的分隔符。
要专门突出显示>>
,您需要这样的语法行:
<< ... >>
然后你可以用:
突出显示它syntax region mylangMacro start="<<" end=">>" containedin=ALLBUT,mylangMacro
这可以进入highlight default link mylangMacro Macro
,也可以~/.vim/after/syntax/html.vim
的方式作为新的语法高亮显示(这将是我的首选方法;然后您可以使HTML文件使用这个新的语法文件用autocmd)。
(您也可以删除使用htmldjango
突出显示错误的错误。但是,您希望获得单独的突出显示比删除错误更好。)
答案 1 :(得分:1)
以下是编辑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语法的颜色:突出显示cComment ctermfg =绿色guifg =绿色
- 醇>
将该文件写入“after / syntax”目录。使用语法名称,添加“.vim”。对于我们的C语法::w 〜/的.vim /后/语法/ c.vim 强>
就是这样。下次编辑C文件时,“注释”颜色将为 不同。你甚至不必重新启动Vim。
如果您有多个文件,则可以使用filetype作为目录 名称。将使用此目录中的所有“* .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