tmux bottom bar color change


80

Ich habe vor kurzem angefangen, es zu benutzen tmuxund mag es sehr, aber seine grüne untere Leiste lenkt ein bisschen ab. Gibt es eine Möglichkeit, seine Farbe zu ändern? oder eine Möglichkeit, es zu verbergen?

Antworten:


96

Es gibt viele Optionen im Handbuch . (Siehe Abschnitt Optionen.) Erstellen Sie eine RC - Datei: ~/.tmux.conf. Der folgende Inhalt aktiviert UTF-8, legt den richtigen TERM-Typ fest und zeichnet die Statusleiste mit einem schwarzen Hintergrund und einem weißen Vordergrund.

set status-utf8 on
set utf8 on

set -g default-terminal "screen-256color"

set -g status-bg black
set -g status-fg white

In FreeBSD 10.1 musste ich -gdie UTF-Direktiven ergänzen .

set -g status-utf8 on
set -g utf8 on

Unter UTF-8 müssen viele SSH-Clients einen zu verwendenden Zeichensatz explizit definieren. Wählen Sie beispielsweise in Putty Window -> Translation -> Remote character set: UTF-8und anschließend aus Use Unicode line drawing code points.

Und um die Statusleiste auszuschalten ...

set -g status off

Auf Farben aus dem Handbuch ...

Message-BG Farbe

Stellen Sie die Hintergrundfarbe der Statuszeilenmeldung ein, wobei die Farbe eine der folgenden ist: Schwarz, Rot, Grün, Gelb, Blau, Magenta, Cyan, Weiß, Farbe0 bis Farbe255 aus der 256-Farben-Palette oder die Standardfarbe.

Um die verfügbaren Farben aufzulisten, müssen Sie zuerst ein Skript erstellen , vielleicht colors.sh:

#!/usr/bin/env bash
for i in {0..255} ; do
    printf "\x1b[38;5;${i}mcolour${i}\n"
done

Führen Sie als Nächstes das Skript aus und leiten Sie es weiter an less:

colors.sh | less -r

Dies erzeugt eine Liste von Farben, 1-255, in diesem Format:

colour1
[...]
colour255

Wählen Sie eine Farbe aus der Liste aus, vielleicht die Farbe 240 , ein Grauton . In ~/.tmux.confdiesen Wert verwenden , um die gewünschte Farbe zu setzen:

set -g status-bg colour240

In Fedora 17 sind Terminals mit 256 Farben standardmäßig nicht aktiviert. Die offizielle Methode, mit der standardmäßig Terminals mit 256 Farben aktiviert werden, finden Sie im Fedora-Projekt-Wiki . Befolgen Sie diese Anleitung, oder erstellen Sie als benutzerspezifische Lösung einen Alias ​​für tmux, um die Unterstützung von 256 Farben mit dem Schalter "-2" zu erzwingen.

alias tmux="tmux -2"

Dann starte tmux um es zu testen.

Beachten Sie, dass es, wie @ ILMostro_7 zeigt, nicht korrekt wäre, den TERM-Typ für beispielsweise tmuxvon festzulegen ~/.bashrc. Jedes tmux-Fenster emuliert ein Terminal - nicht dasselbe wie ein xterm. Die Emulation in tmuxmuss mit screen, einer anderen Terminalbeschreibung, übereinstimmen, um sich richtig zu verhalten. Das reale Terminal muss dies jedoch nicht tun. Die Beschreibung lautet xterm-256color.


Dies funktioniert gut für Ubuntu, aber ich Fedora 17, wenn ich fg color auf Grey setze, sagt es "schlechte Farbe".
Sam

Ich habe die offizielle Methode aus dem Fedora-Wiki verwendet und bei jedem Versuch, mich anzumelden, die folgenden Fehlermeldungen ausgegeben: -bash: $ '\ r': Befehl nicht gefunden -bash: $ '\ r': Befehl nicht gefunden -bash: $ ' \ r ': Befehl nicht gefunden -bash: /etc/profile.d/256colors.sh: Zeile 13: Syntaxfehler in der Nähe des unerwarteten Token- $'in\r'' 'bash: /etc/profile.d/256colors.sh: line 13: Falls "$ TERM" in .Auch ich habe die beiden anderen Methoden verwendet, aber ohne Fehler ausgeführt nichts gemacht!
Sam

4
Um bg-color auf transparent zu setzen:set -g status-bg default
Mr Hyde

1
Hier ist die Farbkarte: github.com/guns/xterm-color-table.vim/blob/master/… Beispiel: color260 ist orange. Drücken Sie dann in Tmux die Tastenkombination Strg-b :set -g status-bg colour260. (Tmux verwendet internationale "Farbe" im Vergleich zu amerikanischer "Farbe".) Beachten Sie auch, dass Tmux über einen Verlauf verfügt, um die Farbe von Control-b zu aktualisieren, dann :in den Befehlsmodus zu wechseln und den Pfeil nach oben zu drücken, um den zuletzt eingestellten Farbbefehl zu bearbeiten.
johntellsall

eine bessere Lösung zu verwenden , könnte sein , xterm-256colorstatt screen-256colorfür die TERMUmgebungsvariable.
ILMostro_7

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.