
Ich weiß, dass ich :source /path/to/some/.vimrc
meine Benutzer laden kann .vimrc
, wenn ich als Root arbeite, aber wie kann ich auch das gesamte .vim/
Verzeichnis verwenden? Gibt es eine Startoption für die Verwendung /home/user/.vim/
, die ich als Alias einrichten kann?
Und wo im Handbuch hätte ich diese Informationen gefunden, wenn ich gewusst hätte, wonach ich suchen muss? Ich habe die Informationen zur Verwendung des gesamten Verzeichnisses ( gilt nur für die Datei) :help .vim
einfach :help .vimrc
nicht gefunden ..vim/
-U
.vim
Danke.
Antwort1
Verwenden Sie die UmgebungsvariableVIMINIT
nach rechts zeigen .vimrc
undVIMRUNTIME
um auf das richtige .vim
Verzeichnis zu verweisen. Sie können dies tun über env
:
$> env VIMINIT=/home/user/.vimrc VIMRUNTIME=/home/user/.vim/ vim
$> VIMINIT='let $MYVIMRC = expand('\''~user'\'') . '\''/.vimrc'\''|source $MYVIMRC' vim -c 'set runtimepath=~user/.vim,/var/lib/vim/addons,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,/var/lib/vim/addons/after,~user/.vim/after'
wie immer: wenn das zu lange zum Eintippen ist, erstellen Sie eine Shell-Funktion oder einen Shell-Alias.
Um mehr darüber zu erfahren, wie vim
Starts und was hinter den Kulissen passiert, lesen Sie:help initialization
.
Antwort2
Es scheint, dass VIMINIT
und VIMRUNTIME
nicht verwendet werden, wie Akira sagte.
VIMINIT
wird als Ex-Befehl verwendet. Daher VIMINIT=/home/user/.vimrc
würde eine Suche versuchen, und ein Fehler wie dieser würde ausgegeben:
search hit BOTTOM, continuing at TOP
Error detected while processing VIMINIT:
E486: Pattern not found: home
VIMRUNTIME
verweist normalerweise auf den Speicherort, an dem die grundlegenden Supportdateien von Vim installiert sind, etwa /usr/share/vim/vim73
. Bei einer Umleitung nach /home/user/.vim würde Vim also viele grundlegende Funktionen verlieren, es sei denn, Ihr Vim ist einfach in /home/usr/.vim installiert.
Laut :help -u
und :help vimrc
,-u vimrc
Mit dieser Option können Sie die Datei angeben .vimrc
, aber die meisten anderen Initialisierungsdateien werden übersprungen, wie z. B. das System-vimrc /etc/vimrc
. Wenn die angegebene vimrc-Datei fast alle Aufgaben übernimmt, ist der Mangel, wenn sie so aufgerufen wird, unbedeutend.
Nach :help runtimepath
, Pfade vonruntimepath
wird nach Supportdateien durchsucht, sodass wir vor dem Einbinden der vimrc-Datei mithilfe von Optionen beim Start etwas voranstellen /home/user/.vim
und anhängen /home/user/.vim/after
können .runtimepath
--cmd
Zusammenfassend können wir diesen Alias so einrichten, dass er ~/.vimrc und ~/vim verwendet:
alias vim='vim --cmd "set runtimepath^=/home/user/.vim" \
--cmd "set runtimepath+=/home/user/.vim/after" \
-u /home/user/.vimrc'
PS: Alternativ könnten auch zwei einfache symbolische Links für Sie funktionieren.
mv /root/.vimrc{,.bak}
mv /root/.vim{,.bak}
ln -s /home/user/.vimrc /root/
ln -s /home/user/.vim /root/
Antwort3
Wahrscheinlich die beste Lösung aller Zeiten.
export MYVIMRC="/xxx/.vimrc"
export VIMINIT=":set runtimepath+=/xxx/.vim|:source $MYVIMRC"
wo xxx
ist der benutzerdefinierte Pfad.