2017-12-23 4 views
0

Ich möchte oben auf meiner .vimrc überprüfen, ob vim-plug installiert ist und dementsprechend handeln, wenn ich meine dotfiles installiere, erhalte ich keine Fehler, nachdem ich vim zum ersten Mal ausgeführt habe .So stellen Sie sicher, dass der plugin manager installiert ist

Wenn es keinen vim-plug gibt, sollte wget ihn von github herunterladen und Plugins installieren.

Bisher habe ich diesen Code-Snippet

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() 

Aber das macht nur sicher vim-Stecker in dem Plugin-Verzeichnis vorhanden ist. Wie kann ich dieses Plugin nach dem Download laden und PlugInstall nach call plug#end() ausgeben?

Vielen Dank für Ihre Hilfe!

bearbeiten ich es geschafft, teilweise die rpoblem zu lösen, indem

autocmd VimEnter * PlugInstall --sync | source $MYVIMRC 

Leider einige Fehler immer noch auftreten hinzufügen.

Antwort

3

Um zu überprüfen, ob das Plugin geladen ist oder nicht, sollten Sie mit den implementierten Funktionen arbeiten. vim-plug bietet mehrere Befehle und Funktionen, so dass Sie exists("*plug#begin") oder exists(":PlugInstall") tun können. Da Sie PlugInstall anrufen, würde ich die letzte empfehlen. Für weitere Informationen geben Sie help exists( ein.

Freundlich gesprochen, das Ziel ist sehr seltsam, da es keine Internetverbindung oder Plugin-Ziel kann vom Betreuer geändert werden. Dennoch sind, wenn Sie dieses Verhalten bevorzugen hier einige Tipps:

  1. Verwenden -p Flagge für mkdir. Der Befehl wird nicht fehlschlagen, wenn bereits autoload Verzeichnis vorhanden ist.
  2. Verwenden Sie vim system() Funktion, um den Shell-Befehl aufzurufen; Überprüfen Sie dann v:shell_error für Probleme, die ich oben erwähnte. Es sollte 0 sein, wenn keine Fehler auftreten.
Verwandte Themen