如何禁用 vim 语法高亮中的语法区域?

Cur*_*son 3 vim vim-syntax-highlighting

我使用的是 Vim 8.0 及其syntax/markdown.vim附带的默认版本,即Tim Pope 的 vim-markdown包的 2016-08-20 版本。

这个包有一个错误,在某些文件上确实让我烦恼:它将任何由四个或更多空格缩进的行视为代码块,包括列表延续。因此,在以下内容中:

1. Agenda Item 1: Frob the Bazzit
   - The bazzit is something that makes us have
     very _short_ lines indeed.
   - Further frobbing is necessary
Run Code Online (Sandbox Code Playgroud)

该行将very _short_ lines indeed突出显示为代码块,并且该单词short不会变为斜体。

我很高兴完全禁用代码块突出显示,至少在这些情况下,但事后我不知道如何做到这一点。我一直在测试~/.vim/after/syntax/markdown.vim调整配置,但我不知道如何,一旦

syn region markdownCodeBlock start="    \|\t" end="$" contained
Run Code Online (Sandbox Code Playgroud)

已在系统中执行,markdown.vim我可以在我的after/syntax/markdown.vim. 我该怎么做呢?

(我尝试过使用highlight link markdownCodeBlock NONE,它确实禁用了这些行上的代码块颜色,但不幸的是它们仍然被标记为代码块区域,并且仍然不突出显示其中的任何其他标记,例如_italic_`code`联标记。)

mur*_*uru 5

看起来您想要做的事情很清楚特定的语法组:

要清理当前缓冲区的特定语法组:

:syntax clear {group-name} ..
Run Code Online (Sandbox Code Playgroud)

这会删除 的所有模式和关键字{group-name}

但看起来你无法明确一个组的具体定义。仅整个组:

:syn clear markdownCodeBlock
Run Code Online (Sandbox Code Playgroud)