Vim 支持匹配成对的花括号、圆括号和方括号。这非常适合编辑 PHP 和 JavaScript 等 C 风格的语言。但是匹配 HTML 标签呢?
只要我一直在使用 Notepad++,它就一直具有此功能。能够发现 HTML 块的开始和结束位置非常有用。我正在寻找类似 Vim 的东西(见绿色 div 标签):
https://i.stack.imgur.com/swLB4.png
一个额外的功能:突出显示未关闭的 HTML 标签,如上面屏幕截图中的红色标签。
matchit 已被提议为次优,但它需要额外的按键才能使用其功能。我希望能够在没有额外按键的情况下查看 HTML 块的开始和结束位置。
我已经在互联网上搜索了类似 Vim 的东西。显然,根据 two other StackOverflow 问题和 Nabble thread,我不是唯一一个。
我几乎让自己对 Vim 无法在视觉上匹配 HTML 标记感到厌烦。 Vim 有可能做到这一点吗?
附录:如果目前无法使用任何现有插件执行此操作,是否有任何 Vimscript 向导对如何编写合适的插件有任何指示?
我今天必须使用一些 HTML,所以我想我会解决这个问题。向 vim.org 添加了一个 ftplugin 应该可以解决您的问题。
You can get it here on vim.org。
You can get it here on github。
希望对你有效。如果您有任何问题,请告诉我。
Greg 的 MatchTag.vim 插件很棒,但我想要更多。我希望始终突出显示封闭标签,而不仅仅是当光标位于其中一个标签上时。
所以我写了 MatchTagAlways,它完成了 Greg 的 MatchTag 所做的所有事情,并且始终突出显示封闭标记,无论光标在代码中的哪个位置。它还适用于非封闭标签和 HTML 模板语言,如 Jinja 或 Handlebars。
这是一个 GIF 显示它的实际效果:
https://i.imgur.com/qAf0N.gif
我来这里是为了在 Vim 中寻找匹配的 html 风格的尖括号。这似乎有效:
:set mps+=<:>
:help matchpairs