在markdown中编辑文本时,我不想突出显示书目条目。这可以通过以下命令来实现:
:syn match CitNoSpell '\[@[^[:space:]]\+\]' contains=@NoSpell
但是,如果我在.vimrc
中输入此命令,它将被忽略。我认为这是因为在读取vimrc之后加载了拼写文件,并且未保留此定义。
如何强制vim忽略此模式?我希望它保留在.vimrc中,因为我可以跨多个系统同步文件,但是也欢迎使用其他解决方案。
答案 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
。