如何正确重新加载.vimrc文件所以它将等于重启vim?

时间:2017-03-16 18:59:08

标签: vim macvim

我使用MacVim,在我的.vimrc文件中,我有map ,V :source $MYVIMRC<CR>绑定,允许我在最近修改的情况下应用最新版本的.vimrc。 但是我注意到奇怪的事情可能会发生,重新启动会减慢vim并且按下,V之后一些插件可能会发生冲突,如果我只是关闭并从头开始重新启动MacVim,那么一切正常。

如果你能给我一个关于这种行为的原因的暗示,我将非常感谢,因为我希望有可能更新.vimrc文件,这将完全清除内部vim状态并获取新配置文件

1 个答案:

答案 0 :(得分:2)

将配置重新应用到原始Vim的唯一可行方法实际上就是重新启动它。

但减速的最可能原因是过度使用/滥用自动命令。

添加自动命令而不检查现有命令。其中一个后果是,如果你没有正确管理它们,并且当触发该事件时执行与特定事件相对应的每个自动命令,它们往往会堆积起来,导致可怕的减速。

以下是您在vimrc中使用自动命令的两种方式:

方法#1

" anywhere
augroup nameofthegroup
    autocmd!
    autocmd EventName pattern commandtoexecute
    autocmd AnotherEventName anotherpattern anothercommandtoexecute
augroup END

方法#2

" near the top of your vimrc
augroup nameofthegroup
    autocmd!
augroup END

" anywhere
autocmd nameofthegroup EventName pattern commandtoexecute
autocmd nameofthegroup AnotherEventName anotherpattern anothercommandtoexecute

这个想法是创建一组自动命令,它们在被调用时会自行清除,从而防止它们堆积起来。