如何确保插件管理器已安装

Paw*_*lak 0 vi vim

我想在我的顶部检查.vimrc是否安装了 vim-plug 并采取相应的措施,这样每当我安装点文件时,第一次运行 vim 后就不会出现错误。

如果没有 vim-plug,那么 wget 应该从 github 下载它并安装插件。

到目前为止我有这个代码片段

if empty(glob("~/.vim/autoload/plug.vim"))
  execute '!mkdir ~/.vim/autoload && wget -O ~/.vim/autoload/plug.vim https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
endif

call plug#begin('~/.vim/plugged')
  " plugins...
call plug#end()
Run Code Online (Sandbox Code Playgroud)

但这只是确保 vim-plug 存在于插件目录中。下载后如何加载此插件并发出 PlugInstall call plug#end()

谢谢你的帮助!

编辑 我通过添加部分地解决了问题

autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
Run Code Online (Sandbox Code Playgroud)

不幸的是,仍然会出现一些错误。

Evg*_*niy 5

要检查插件是否加载,您应该处理其实现的功能。vim-plug提供了多个命令和功能,因此您可以执行exists("*plug#begin")exists(":PlugInstall")。既然你打电话来,PlugInstall我会推荐最后一个。欲了解更多信息,请输入help exists(.

友好地说,这个目标非常奇怪,因为维护者不能更改互联网连接或插件目的地。不过,如果您喜欢这种行为,这里有一些提示:

  1. 使用-p标志mkdir. 如果已经存在自动加载目录,命令不会失败。
  2. 使用vimsystem()函数调用shell命令;然后检查v:shell_error我上面提到的问题。如果没有发生错误,它应该为 0。