Einstellen der Vim-Hintergrundfarben

114

Wenn ich versuche, die Hintergrundfarben in .vimrcoder direkt in Vim mit dem folgenden Befehl zu ändern :

set background=dark

... es beeinflusst meinen Hintergrund überhaupt nicht. Die lightOption auch nicht. Es sieht jedoch in Ordnung aus, wenn ich gvim starte.

Gibt es eine Möglichkeit, den Hintergrund in Vim zu ändern, ohne meine Konsoleneinstellungen zu ändern?

BEARBEITEN Okay, es gibt einen Unterschied zwischen guifg / guibg und ctermfg / ctermbg. Während die GUI viele verschiedene Farbkombinationen akzeptiert, erlaubt cterm nur wenige Standardfarbkombinationen.

Maksim Vi.
quelle
1
Sie können das Terminal auch dazu bringen, viele dieser Farben zu akzeptieren. Siehe diese Seite: vim.wikia.com/wiki/256_colors_in_vim
Matthew

Antworten:

137

In der eigenen Hilfe von vim set backgroundheißt es: "Wenn Sie diese Option festlegen, wird die Hintergrundfarbe nicht geändert. Sie teilt Vim mit, wie die Hintergrundfarbe aussieht. Informationen zum Ändern der Hintergrundfarbe finden Sie unter |: hi-normal |."

Beispielsweise

:highlight Normal ctermfg=grey ctermbg=darkblue

schreibt in Weiß auf Blau auf Ihrem Farbterminal.

Alex Martelli
quelle
Danke, es funktioniert. Ich habe diese Option bereits versucht, aber es scheint, dass nicht alle Farben funktionieren, z. B. die Optionen Braun und Gelb wirken sich überhaupt nicht auf meinen Standard-Konsolenhintergrund aus.
Maksim Vi.
1
das kann b / c von welcher Art von Terminal vim sein, die Sie denken, haben.
Rampion
2
Wie kann ich das zu meinem vimrc hinzufügen?
Marin
4
Achten Sie auch :help hl-NonTextauf die Hintergrundfarbe nach der letzten Zeile der Datei.
Matthew
2
@Marin: Füge genau die Zeile aus dem Beispiel in dein vimrc ein :highlight Normal ctermfg=grey ctermbg=darkblue. Sub in den gewünschten Farben.
Matthew
24

In einem Terminalemulator wie konsole oder gnome-terminal sollten Sie eine 256-Farben-Einstellung für vim festlegen.

:set  t_Co=256

Danach können Sie Ihren Hintergrund ändern.

AA.
quelle
Sie möchten dies wahrscheinlich stattdessen in Ihrem Terminal einstellen : export TERM='xterm-256color'.
Bart Louwers
15

Versuchen Sie es hinzuzufügen

set background=dark

zu dir .gvimrcauch. Das funktioniert gut für mich.

Luke
quelle
7

Die Verwendung set bg=darkmit weißem Hintergrund kann in einigen Syntaxhervorhebungsschemata zu nahezu unlesbarem Text führen. Stattdessen können Sie das gesamte Farbschema in etwas ändern, das in Ihrem Terminal gut aussieht. Die Farbschemadatei sollte das Hintergrundattribut für Sie entsprechend festlegen. Weitere Informationen finden Sie unter:

:h color
Michael Kristofik
quelle
6
Deshalb habe ich meine Frage hier gepostet. Selbst dunkle Farbschemata hatten keinen Einfluss auf meine Standardhintergrundfarbe.
Maksim Vi.