MacVim ruft alle Einstellungen von ~ / .vimrc ab, aber nicht die Farben und ich muss sie erneut eingeben

7

Ich benutze die folgenden ~ / .vimrc mit MacVim 7.4 auf MacOS X Mavericks:

%Vor%

und kann sehen, dass der Editor alle Einstellungen aus dieser Datei übernimmt (die Schriftfamilie und ihre Größe, das Lineal und die Tab-Einstellungen, ...), aber nicht die Farben:

Erst nachdem ich den Befehl :so ~/.vimrc ausgegeben habe, nimmt er auch meine Farbeinstellungen (rot und blau mit invertierten Kommentaren):

Weiß jemand, was passiert, warum nimmt MacVim nicht auch die Syntaxfarben auf?

Unten ist die :version Information:

%Vor%     
Alexander Farber 14.01.2014, 11:55
quelle

3 Antworten

13

MacVim bezieht seinen Standard gvimrc nach Ihrem ~/.vimrc . Es enthält dieses Snippet:

%Vor%

Was passiert, ist einfach: MacVims Standardfarbschema überschreibt Ihre :hi -Befehle beim Start von Vim und Ihre :hi -Befehle überschreiben den Standardfarbschemas, wenn Sie ~/.vimrc .

Die Behebung ist auch einfach: Verwandle deine :hi -Befehle in ein echtes Farbschema, wie es in Ingo's Antwort heißt.

Außerdem ist set background=light nur in einem Farbschema nützlich, also verschiebe auch diese Zeile.

    
romainl 14.01.2014, 13:02
quelle
5

Dies ist keine direkte Antwort, aber Sie sollten alle :hi -Befehle von Ihrem ~/.vimrc in ein separates (privates) Farbschema extrahieren, z. %Code%. Stellen Sie die folgende Präambel voran:

%Vor%

Wählen Sie dann das Farbschema über

%Vor%

in Ihrem ~/.vim/colors/mine.vim .

Vorteile

  • Sollte Ihr Problem beheben.
  • Verwendet die richtigen Abstraktionen von Vim.
  • Verringert die Größe von ~/.vimrc und macht sie dadurch leichter zu verwalten.
  • Ermöglicht den Wechsel von Farbschemas im laufenden Betrieb.
  • Stellt Ihre Farben wieder her, wenn Sie .vimrc vorübergehend deaktivieren.
Ingo Karkat 14.01.2014 12:17
quelle
2

Der MacVim ist wirklich ein gvim, also können Sie eine .gvimrc haben, die eine Mac-spezifische colortheme-Konfiguration wäre. Z.B. Ich habe normalerweise eine Basis .vimrc, die ich auf allen Unix-Systemen verwende, wo ich normalerweise alle Syntaxfarben deaktiviere, aber die Kommentare einfärbe. Wie du gesagt hast, wird es in MacVim nicht funktionieren, daher habe ich eine .gvimrc, die perfekt zum Setzen von Farben für Macvim ist, vorausgesetzt, ich benutze gvim nie irgendwo.

    
Alex 10.08.2016 23:01
quelle