Der Vim-Hintergrund (ohne GUI) wird nicht weiß

Der Vim-Hintergrund (ohne GUI) wird nicht weiß

Ich versuche, ein einfaches Vim-Farbschema einzurichten, das aus schwarzem Text auf weißem Hintergrund besteht.

Wie mache ich den Hintergrund weiß?

Bezogen aufbw.vim, ich habe jedoch ein Problem damit, den Hintergrund weiß zu bekommen, er wird stattdessen grau.

hi Normal         ctermbg=White        ctermfg=Black

Ergibt dasselbe Ergebnis wie:

hi Normal         ctermbg=Gray         ctermfg=Black

Bildbeschreibung hier eingeben

Durch Umkehren erhalte ich jedoch weißen Text auf schwarzem Hintergrund.

Vim läuft in einem xterm mit t_Co==8, Vim-Version:

VIM - Vi IMproved 7.3 (2010 Aug 15, compiled Jul  4 2011 14:31:51)

Aktualisierung 1

Verwendung von Gnome Terminal 2.16, das eine 16-Farben-Palette verwendet, obwohl:

tput colors
8

Das Terminal teilt den Anwendungen mit, dass es 8 Farben hat, wodurch t_Co in Vim auf 8 gesetzt wird.

Vim verwendet diese Informationen und verwendet „Paletteneintrag 8“ für Weiß, was in meinem Fall auf ein mittleres Grau eingestellt war. Ich bin nicht sicher, ob das eigentliche Problem eine falsche Antwort von tput oder die falsche Zuordnung von Weiß zur Palette ist.

Update 2:

Wenn Sie -256color zum Term hinzufügen, gibt tput 256 zurück und vim t_Co ebenfalls 256.

Für csh:

setenv TERM $TERM-256color

Ursprünglich zögerte ich, 256 Farben blind auf einem System anzuwenden, an dem ich arbeite, aber ich denke, dass es heutzutage selten ist, auf ein Terminal zu stoßen, das 256 Farben nicht unterstützt. Dies müsste auch ein System/Netzwerk sein, in dem ich meine Dotfiles bereits eingerichtet habe.

Antwort1

Wenn Ihr Terminalemulator Gnome-Terminal ist, verfügt er über eine Einstellung zum manuellen Ändern der standardmäßigen 16 Farben, die er unterstützt (Gnome-Terminalnichtunterstützt 256 Farben). Gehen Sie zu Profileinstellungen -> Farben und aktualisieren Sie die weiße Farbe, dort ist sie möglicherweise grau.

Antwort2

Wenn Ihr Terminalemulator 256 Farben unterstützt, aktivieren Sie 256 Farben in vim:

set t_Co=256

Der Hintergrund sollte nach der Ausgabe weiß erscheinen

:highlight Normal ctermfg=black ctermbg=white

verwandte Informationen