Wo sollte sich die .vimrc-Datei unter Windows 7 befinden?


177

Ich habe kürzlich vim unter Windows 7 als eigenständige Binärdatei installiert.

Wo soll ich meine .vimrc-Datei ablegen?


Aber stimmt es nicht, dass es sich bei Windows um eine _vimrcDatei handelt?
Kazark

4
Windows gvim (entweder Cygwin oder Native) wählt _gvimrc, .gvimrc, _vimrc und schließlich _vimrc in dieser Prioritätsreihenfolge. Es wird der Unterstrich und das Punktformat für den vimrc unterstrichen.
Darren Hall

Antworten:


204

Aus dem Vim Wiki .

In Vim wird Ihr Ausgangsverzeichnis mit $ HOME angegeben. Auf Unix-Systemen ist dies Ihr ~ Verzeichnis. Auf Windows-Systemen können Sie den Wert von $ HOME wie folgt in Vim ermitteln. Diese Befehle sind nützlich, um festzustellen, welche Verzeichnisse Ihr Vim verwendet:

:version
:echo expand('~')
:echo $HOME
:echo $VIM
:echo $VIMRUNTIME

Sobald Sie die HOMEVariable festgelegt haben, legen Sie die vimrcDatei in diesem Verzeichnis ab.

Wenn Sie Ihre HOMEVariable ändern möchten , legen Sie sie HOMEals Umgebungsvariable für das System oder den Benutzer fest.

Computer> Eigenschaften> Erweiterte Systemeinstellungen> Erweitert> Umgebungsvariablen> Benutzer | Systemvariablen.

Windows (Einheimische und Cygwin *) werden verwendet werden _gvimrc, .gvimrc, _vimrcund .vimrcin dieser Reihenfolge der Priorität. Die gvim * -Dateien werden mit dem gvim-Prozess überprüft, während die Konsolen-vim nur die vim * -Dateien überprüft.

*: verifiziert gegen Version 7.2 und 7.3


3
(Für diejenigen wie mich, die Windows nur verwenden, wenn sie dazu gezwungen werden): Denken Sie daran, das Anzeigen von Dateierweiterungen zu aktivieren. "_gvimrc.txt" usw. funktioniert nicht. ;)
Stein G. Strindhaug

Um HOMEdas Verhalten von Unix-Systemen anzupassen, würde ich eine globale Umgebungsvariable erstellen, %USERPROFILE%falls dies noch nicht geschehen ist.
Pluto

19

Für Vim 7.4 sind dies die Pfade, nach denen unter Windows gesucht wird

   system vimrc file: "$VIM\vimrc"
     user vimrc file: "$HOME\_vimrc"
 2nd user vimrc file: "$HOME\vimfiles\vimrc"
 3rd user vimrc file: "$VIM\_vimrc"
      user exrc file: "$HOME\_exrc"
  2nd user exrc file: "$VIM\_exrc"
  system gvimrc file: "$VIM\gvimrc"
    user gvimrc file: "$HOME\_gvimrc"
2nd user gvimrc file: "$HOME\vimfiles\gvimrc"
3rd user gvimrc file: "$VIM\_gvimrc"
    system menu file: "$VIMRUNTIME\menu.vim"

Wie Darren Hall sagte, verwenden Sie diese Befehle, um die Werte von $VIMund herauszufinden $HOME.

:echo $HOME
:echo $VIM

Ein guter Ort für gvim-spezifische Einstellungen wäre beispielsweise

C:\Users\MyUsername\_gvimrc

5

Der einfachste Weg, den ich gefunden habe, besteht darin, einfach den Speicherort der aktuell verwendeten vimrc-Datei abzufragen. Sie können diese dann durch Ihre eigene benutzerdefinierte Version ersetzen.

:echo $MYVIMRC

4

Wenn Sie es nur aus einer .bat-Datei herausfinden müssen, schauen Sie zuerst in das %HOME%Verzeichnis. Wenn dies nicht definiert ist, sucht vim / gvim in dem Pfad, der durch Verketten von %HOMEDRIVE%und definiert ist %HOMEPATH%.


1

Das ist eigentlich eine gute Frage, denn nach der Installation (seltsamerweise) erhalten Sie eine _vimrc-Datei unter "Programme" - was kein guter Ort für Konfigurationsdateien ist.

Leg es unter

%USERPROFILE%\vimfiles\_vimrc

Auf diese Weise wird es anstelle der von der Installation gespeicherten Konfigurationsdatei abgerufen.


0

Ich habe festgestellt, dass vim-tux, das über Chocolatey installiert wurde, .vimrc-Dateien nur unter C: \ Users \ MyUsername \ vimfiles sehen kann. Die Version gibt an, dass C: \ Users \ MyUsername ebenfalls enthalten ist.


0

Ich stelle fest, dass beim Öffnen von gvim über den Windows-Dateiexplorer $ HOME auf c: \ Users \ myname festgelegt ist, aber beim Starten über den Cygwin-Dateiexplorer auf / cygwin / home / myname festgelegt ist . Das ist gut, weil ich damit jeweils etwas andere Einstellungen vornehmen kann. Um die Dinge zu trennen und die Datensicherung zu vereinfachen, heißt Windows _vimrc und Cygwin .vimrc .

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.