Ich habe ein schönes Vim-Farbschema ( xoria256 ) und es sieht in GVim hervorragend aus, aber wenn ich vim
in Terminal normal verwende , wird das Farbschema nur teilweise unterstützt - zum Beispiel wird die Standardfarbe für halbtransparenten Auberginenhintergrund verwendet. Wie kann ich Terminal dazu bringen, mein Vim-Farbschema originalgetreu wiederzugeben?
command-line
vim
colors
David Siegel
quelle
quelle
Antworten:
GNOME Terminal unterstützt 256 Farben, kündigt jedoch keine Unterstützung an. Sie können die automatische Erkennung von vim überschreiben, indem Sie Folgendes eingeben:
in deinem ~ / .vimrc.
Hinweis : Wenn Sie den GNU-Bildschirm verwenden, werden diese 256-Farben-Codes problemlos verarbeitet und in 16 Grundfarben konvertiert. Eine bessere Lösung besteht darin, TERM auf xterm-256color zu ändern, bevor Sie screen / vim starten.
Update für 2017 : Wenn Sie ein ausreichend aktuelles Vim (7.4.1799 oder neuer) und einen ausreichend fortgeschrittenen Terminal-Emulator (xterm oder gnome-terminal basierend auf einer ausreichend aktuellen Version von VTE) haben, können Sie
:set termguicolors
und Terminal-Vim voll nutzen 24-Bit-Farben, wie von Ihrem vim-Thema definierthighlight guifg=#rrggbb guibg=#rrggbb
.quelle
:set t_Co=256 | colorscheme xoria256
.if $COLORTERM == 'gnome-terminal'
`set t_Co = 256`endif
(Ich bin nicht sicher, wie ich mehrzeilige Codeblöcke in Kommentaren einfügen soll, also füge Zeilenumbrüche vor und nach der set-Anweisung hinzu)Eine allgemeinere Lösung besteht darin, den Begriff "xterm-256color" zu installieren. In 10.04 denke ich, dass es standardmäßig installiert ist. Zuvor mussten Sie "ncurses-term" installieren, um es zu bekommen.
Dann setzen Sie den Begriff type in .bashrc mit so etwas wie dem Folgenden:
Wenn Sie es vorziehen, nur die 256-Farben-Fähigkeit für bestimmte Programme zu verwenden (möglicherweise verwirrt sie einige andere):
und setzen Sie das vielleicht als Alias für das Programm.
Überprüfen Sie dann die Farbfunktionen Ihres Terminals mit:
Möglicherweise benötigen Sie die oben genannte VIM-Einstellung, damit VIM sie erkennt. Die meisten Anwendungen erkennen die 256 Farben automatisch (sofern sie diese verwenden können).
Emacs hat auch Farbthemen, die mit 256 Farben viel besser sind. So überprüfen Sie, ob es 256-Farben-fähig ist:
256colors.pl ist ein Perl-Skript, das alle Farben in Ihrem Terminal anzeigt.
quelle
[[ -n "$DISPLAY" && "$TERM" = "xterm" ]] && export TERM=xterm-256color
. Bitte überprüfen Sie und fühlen Sie sich frei, um es dem Beitrag hinzuzufügen.;
, um alles zu einem Einzeiler zu machen.Fügen Sie einfach die folgende Zeile in Ihre ein
$HOME/.bashrc
(vorzugsweise in die letzte Zeile der Datei):Und rette es. Starten Sie danach Ihr Gnome-Terminal neu. Diese Änderung ist nicht nur in vim verfügbar, sondern für alle Ihre Terminalanwendungen.
Führen Sie dieses kleine Skript aus , um zu überprüfen, ob es funktioniert :
Danach sehen Sie ungefähr Folgendes (abhängig von Ihrem Gnome-Terminal-Thema):
quelle
Nun, Sie können Gvim immer so konfigurieren, dass es wie Vim aussieht. Sie müssen nur eine ~ / .gvimrc-Datei erstellen und diese Anpassungstricks einfügen:
Ich denke das löst dein Problem nicht, aber wer weiß ;-)
quelle
Ich habe ein separates Profil für Vim erstellt, das im Hintergrund eine feste, undurchsichtige Farbe verwendet. Ich wechsle einfach manuell dorthin, wenn ich Vim verwende. Nicht sicher, ob es eine bessere Methode gibt. Das würde ich gerne glauben.
quelle
if has("gui_running")
in Ihrem vimrc GUI-spezifische Optionen festlegen.