在Vim中,我该如何设置自动命令在插件加载后运行?

8
我使用的 Vim 插件之一有一个 bug,导致它会设置:syntax spell notoplevel。如果我在打开文件后运行:syntax spell toplevel命令,可以轻松解决这个问题。但是,我懒得每次都手动运行该命令,并且希望将其修复放入我的init.vim / .vimrc文件中,以便自动运行。
如何确保我的修复程序在有 bug 的插件代码之后执行,以免被插件覆盖?
2个回答

13
~/.vim/after/plugin/目录下创建一个文件,例如~/.vim/after/plugin/fix-spell.vim,其中包含您将在没有冒号的情况下运行的命令。
syntax spell toplevel

~/.vim/after/plugin目录中的文件在插件加载后被调用,因此提供了一个方便的钩子来更改可能由插件设置的设置。


2
谢谢!对于使用 NeoVim 的其他人,after/ 目录的默认位置是:~/.config/nvim/after/ - andypea
@andypea,谢谢。具体来说,默认位置是:~/.config/nvim/after/plugin - Gang Liang

4

或者,您可以将其设置为自动命令。您可以将一系列事件与自动命令关联(:help events以获取全部内容)。VimEnter是在加载插件后触发的事件,因此您可以在vimrc中使用以下行来设置您的命令以在该事件时运行:

autocmd VimEnter * syntax spell toplevel

这就是我正在使用的方法来应用插件主题,直到插件加载后才可用。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接