Vim 如何使显示的文本与文件中的实际文本不同

Vim 如何使显示的文本与文件中的实际文本不同,vim,vim-plugin,Vim,Vim Plugin,是否有必要让vim显示与文件中实际文本不同的内容 例如,是否可以使文件包含以下内容: <a href="http://www.example.com">link</a> Vim显示器 提前谢谢。是的,这是可能的。编写vim语法文件有点晦涩难懂,所以您可能首先查看是否有人已经编写了一些可以满足您需要的内容。例如,试试看。(如果片段丢失了,那么向下滚动到“使用隐藏”部分。在Google和GitHub上快速搜索并没有找到更好的结果。)文档的起点是 :help conce

是否有必要让vim显示与文件中实际文本不同的内容

例如,是否可以使文件包含以下内容:

<a href="http://www.example.com">link</a>

Vim显示器


提前谢谢。

是的,这是可能的。编写vim语法文件有点晦涩难懂,所以您可能首先查看是否有人已经编写了一些可以满足您需要的内容。例如,试试看。(如果片段丢失了,那么向下滚动到“使用隐藏”部分。在Google和GitHub上快速搜索并没有找到更好的结果。)文档的起点是

:help conceal
或者备份一点并开始阅读
:help:syn arguments

这项功能首次推出时颇受争议。起初,Bram拒绝包含它,但现在标准发行版中vim帮助文件的语法文件使用了该功能

我做了一些实验。试试这个。您可以随时添加语法规则;最近的胜利。因此,只要在常规HTML语法文件之后获得
:source
d,就应该很好了。请记住将
'hiddenLevel'
设置为默认值以外的值,并且
'hiddenCursor'
对当前行很重要

syn region htmlLink matchgroup=htmlLinkTag start="<a\>\_[^>]*>" end="</a>" contains=@Spell,htmlTag,htmlEndTag,htmlSpecialChar,htmlPreProc,htmlComment,javaScript,@htmlPreproc
syn match htmlLinkTag "<a\>\_[^>]*>" conceal cchar=[
syn match htmlLinkTag "</a>" conceal cchar=]
syn region htmlink matchgroup=htmlinktag start=“\\\\[^>]*>”end=“”包含=@Spell、htmlTag、htmlSpecialChar、htmlprepc、htmlComment、javaScript、@htmlprepc
同步匹配HTMLINKTAG“\\ u[^>]*>”隐藏cchar=[
同步匹配HTMLINKTAG“”隐藏cchar=]
我有点担心这可能会在
htmlinktag
组中突出显示太多内容