允许语法突出显示kramdown脚注,同时防止在vim中的代码块中突出显示

时间:2014-03-17 20:29:33

标签: vim markdown vim-syntax-highlighting kramdown

vim的markdown默认语法高亮显示基于vanilla markdown,它将每个制表符或四个空格的缩进行视为代码块的开头。来自markdown.vim:

syn region markdownCodeBlock start="    \|\t" end="$" contained

然而,我使用kramdown,它允许脚注(和其他一些一样,如Pandoc,Markdown Extra和MultiMarkdown)。我已经提出了这个规则修改,以允许脚注中的语法突出显示和拼写检查,但不允许代码块:

syn region markdownCodeBlock start="\(\[\^.*\]:\n\)\@<!    \|\t" end="$" contained
然而,它并不完美,因为它不允许脚注与它们的实例化在同一行上开始,不允许脚注中的代码块,并且不会允许多段脚注。有关如何更好地做到这一点的任何建议吗?

1 个答案:

答案 0 :(得分:0)

您可以使用vim-pandoc。它没有正确地突出脚注中的代码,但解决了其余的问题。不幸的是,它与kramdown语法的其他一些不太常见的部分(例如表格)相比并不好用,所以它不是一个完美的解决方案。

其默认设置广泛使用vim&#39; s conceal feature;如果您不喜欢这样,可以将其关闭:

:set cole=0