在vimrc中设置拼写异常

时间:2018-11-15 10:45:54

标签: vim

在markdown中编辑文本时,我不想突出显示书目条目。这可以通过以下命令来实现:

:syn match CitNoSpell '\[@[^[:space:]]\+\]' contains=@NoSpell

但是,如果我在.vimrc中输入此命令,它将被忽略。我认为这是因为在读取vimrc之后加载了拼写文件,并且未保留此定义。

如何强制vim忽略此模式?我希望它保留在.vimrc中,因为我可以跨多个系统同步文件,但是也欢迎使用其他解决方案。

1 个答案:

答案 0 :(得分:1)

在首先加载~/.vimrc之前(在任何文件之前),仅稍后设置打开文件的语法,而语法脚本:syntax clear则包含任何现有语法,包括您的定义。

您自定义的正确位置是:help after-directory;即~/.vim/after/syntax/markdown.vim,因为它将在$VIMRUNTIME/syntax/markdown.vim之后产生。

如果您坚持在~/.vimrc中进行配置,则可以尝试以下autocmd,该命令必须放在:syntax on之后:

autocmd Syntax markdown syn match CitNoSpell ...

PS:为保持一致性,在调整Markdown语法时,添加的语法组还应以语法名称开头,即markdownCitNoSpell