Wie kann ich meine vim-Umgebung beibehalten, wenn ich zwischen Konten auf demselben Computer ssh?

7

Ich wechsle häufig mit SSH zwischen Konten auf meinem Computer. Mehrere verschiedene Projekte mit eigenen Entwicklungs- und Produktionskonten. Ist es möglich, meine vim-Umgebung zwischen Konten gleich zu halten?

Ich habe versucht, mit den Einstellungen VIMRUNTIME, VIM und vimrc zu spielen, um einen gemeinsamen Speicherort für die Einstellungen zu definieren, aber das scheint nicht zu funktionieren. Die Einstellungen werden irgendwie übernommen, andere jedoch nicht. Beispielsweise werden Zeilennummern aktiviert, Tabulatoren aktiviert, Tastenkombinationen vorhanden, das Farbschema jedoch nicht oder der Dateityp scheint für Dateien nicht richtig erkannt zu werden.

Danny
quelle

Antworten:

5

Die Einstellung $VIMRUNTIMEüberschreibt das Laden der systemweiten freigegebenen Konfiguration, was normalerweise nicht Ihren Wünschen entspricht. Und nein, Sie können nicht mehr als einen Pfad in dieser Umgebungsvariablen angeben, daher ist dies nicht besonders nützlich (die Dokumente weisen darauf hin, dass Sie ihn nicht direkt einstellen sollten, wahrscheinlich aus diesem Grund).

Fügen Sie stattdessen runtimepathFolgendes hinzu .vimrc:

set runtimepath+=/home/ACCOUNT/.vim

Verwenden Sie dann die Umgebungsvariable VIMINIT, um vim anzuweisen, Ihre (Single Shared) .vimrcbeim Start zu beziehen:

VIMINIT='so /home/ACCOUNT/.vimrc'

Jetzt haben Sie Ihr .vimrcund Ihr .vimVerzeichnis und dessen Inhalt freigegeben , und Sie haben immer noch die konfigurierten Systemstandards, die genau Ihren Anforderungen entsprechen sollten.

Adam Bellaire
quelle
1

Was Sie brauchen, ist nicht nur das vimrc, sondern alle Unterverzeichnisse von vim: Plugins usw. usw. Das Farbschema hängt von einer Datei ab, und die Dateityperkennung hängt auch von den Dateien ab. Sie benötigen also eine gemeinsame Installation von vim.

Trevoke
quelle
0

Ich liebe vim Ich liebe meine Bash-Umgebung Ich weine, wenn ich an einer Maschine arbeite, ohne ... große Krokodilstränen

Um dies zu beheben, habe ich mich an GIT gewandt, das zwar nicht perfekt für das ist, was ich will, es mir aber zumindest ermöglicht, meine Umgebungen hostübergreifend zu halten. (Nebenbei bemerkt, wenn jemand eine bessere Alternative hat, bitte kostenlos).

Mit git klone ich das Repo auf den Remote-Computer und starte dann mein Bash-Skript für das Installationsprogramm.

Meine Umgebung ist wie folgt:

# For the loading of git files
# The deploy/install file will create the symlink ~/.vimrc > ~/git/.../vimrc
$HOME/git/environment/vim/etc/{colors,ftdetect,plugins,vimrc}
$HOME/git/environment/vim/deploy/{install,remove}
$HOME/tmp/git/environment/vim/ # install backs up the originals here
# For the loading of local files
$HOME/.vim/{colors,ftdetect,plugins,vimrc}

Und meine .vimrc enthält Folgendes:

set runtimepath=~/git/env/vim/etc,$VIMRUNTIME
jonathanserafini
quelle
0

dachte, es gibt Möglichkeiten, die Konfiguration lokal zu teilen, wie andere beschrieben haben. Es hilft dir immer noch nicht, wenn du auf einen anderen Computer sshst :).

Ich habe mit meiner .vim-Konfiguration ein [github-Projekt] ( http://github.com/astrails/dotvim] eingerichtet und es einfach überall geklont.

Ich ändere meine VIM-Einstellungen nicht zu oft, aber wenn ich sie festschreibe und drücke, wird sie durch einen einfachen "Git Pull" bei Bedarf auf den neuesten Stand gebracht.

Vitaly Kushner
quelle