Meine GVIM 7.3.46-Installation auf Windows XP Professional SP3 32bit führt keine Syntaxhervorhebung durch, wenn eine _vimrc
Datei vorhanden ist, zumindest nicht PHP und C. Selbst bei expliziter Erwähnung set syntax=php
erfolgt keine Hervorhebung, unabhängig davon, ob die Dateinamenerweiterung auf endet oder nicht .php
.
Selbst wenn eine leere 0-Byte-Datei vorhanden ist, C:\Documents and Settings\myUsername\_vimrc
wird die Syntaxhervorhebung für diese Dateien nicht durchgeführt. Ich kann diese 0-Byte-Datei umbenennen _vimrcBLAH
und die Syntaxhervorhebung funktioniert wieder.
Was könnte die Ursache sein und wie kann ich das Problem beheben?
Antwort1
Das gvim-Programm allein hat die Syntaxhervorhebung nicht standardmäßig aktiviert. Die Syntaxhervorhebung wird nur aktiviert, indem sie explizit mit einem Befehl wie aktiviert wird :syntax on
. Die einzige Möglichkeit, die Syntax zu aktivieren, besteht also darin, sie selbst in der Vim-Befehlszeile zu aktivieren oder einen solchen Befehl in einer Konfigurationsdatei zu haben, die beim Start gelesen wird.
Vim wird unter Windows normalerweise mit einem Standardsatz von Konfigurationsbefehlen in installiert C:\Program Files\Vim\_vimrc
. Dieser Standardsatz umfasst syntax on
. Ohne weitere Konfigurationsdateien liest gvim diese Datei beim Start und Sie erhalten eine Syntaxhervorhebung.
Darin :help _vimrc
heißt es: „Es werden vier Stellen nach Initialisierungen durchsucht. Die erste vorhandene wird verwendet, die anderen werden ignoriert.“ Die Liste der Benutzer-Vimrc-Dateien enthält $HOME/_vimrc
gefolgt von $VIM/_vimrc
. Auf Ihrem System ist $VIM C:\Program Files\Vim
.
Wenn Sie also eine C:\Documents and Settings\myUsername\_vimrc
Datei verwenden, liest gvim diese Datei und überspringt C:\Program Files\Vim\_vimrc
. Wenn Ihre _vimrc nichts enthält, syntax on
wird die Syntaxhervorhebung nicht aktiviert.
C:\Program Files\Vim\_vimrc
Wenn Sie Ihre eigene _vimrc verwenden möchten, stellen Sie sicher, dass Sie alle benötigten Konfigurationsbefehle, einschließlich, hineinkopieren syntax on
.
Antwort2
Da $HOME/_vimrc, falls vorhanden, zuerst abgerufen wird und ich die Standardkonfigurationsdatei nicht ändern möchte, füge ich diese Zeile einfach in mein $HOME/_vimrc ein. Auf diese Weise nehme ich meine Einstellungen in $HOME/_vimrc vor und übernehme alle anderen Einstellungen aus den Installationen. Und es funktioniert sogar nach jeder Neuinstallation oder Aktualisierung.
source $VIMRUNTIME/../_vimrc