Vim语法高亮显示隐藏字符
我想为vim实现一个语法文件,它在文件中隐藏某些字符。具体来说,我想编写一个改进的highlighter,用于读取不显示某些格式字符的标记文件,而更倾向于隐式指示它们。例如,我希望像Vim语法高亮显示隐藏字符,vim,vim-syntax-highlighting,Vim,Vim Syntax Highlighting,我想为vim实现一个语法文件,它在文件中隐藏某些字符。具体来说,我想编写一个改进的highlighter,用于读取不显示某些格式字符的标记文件,而更倾向于隐式指示它们。例如,我希望像*bold*这样的东西可以简单地呈现为带有粗体文本的粗体,或者像这样的标题 My Header ========= 不显示下划线,只显示不同的颜色。到目前为止,我还没有找到任何vim语法文件的示例,这些文件隐藏了特定字符,无法显示。这在vim中是可能的吗?如果是,如何隐藏?要隐藏语法项或某些字符,可以使用隐藏或忽略
*bold*
这样的东西可以简单地呈现为带有粗体文本的粗体
,或者像这样的标题
My Header
=========
不显示下划线,只显示不同的颜色。到目前为止,我还没有找到任何vim语法文件的示例,这些文件隐藏了特定字符,无法显示。这在vim中是可能的吗?如果是,如何隐藏?要隐藏语法项或某些字符,可以使用隐藏或忽略参数。看
:help hl-Ignore
:help syn-conceal
有关示例,请参阅语法文件“help.vim”,它是的一部分。CRefVim是嵌入Vim帮助系统的C参考手册。“help.vim”语法文件扩展了帮助文件的标准语法突出显示
举个例子。此处使用“$”字符以斜体显示文本:
也许这个例子是你进一步挖掘的一个很好的起点
Habi您可以使用“粗体”、“斜体”等类似的颜色主题创建自己的语法文件。它不会隐藏任何内容,因此您的语法必须与原始文本一起使用。 例如,这可能是标题的语法 在您的语法中,您需要:
syn match Header '^\s*\u*\.\s.*$' contains=ALL
hi link Header ModeMsg
在色彩主题中
hi ModeMsg gui=bold guifg=NONE guibg=NONE cterm=bold ctermfg=NONE ctermbg=NONE term=bold
然后像这样的标题
1. This is my new header, being bold
将显示为粗体,完全没有任何标记。顺便说一句,您可以使用TOhtml功能导出它,同时保持高亮显示。我不能用手指触摸它,但这听起来是个糟糕的主意。Vim用于编辑文本,而不是渲染文本(当然,折叠除外)。如果您想要所见即所得的体验,请寻找使浏览器窗口与编辑的标记文档保持同步的插件。我不记得是哪一个,但以前讨论过