Wie können Sie feststellen, welcher Bereich in Tmux fokussiert ist?

82

Ich fange an, tmux zu verwenden (ich denke darüber nach, vom Bildschirm zu wechseln), aber es fällt mir schwer zu sagen, welcher Bereich fokussiert ist, wenn ich ein Fenster in mehrere Bereiche aufteile. Gibt es eine Konfigurationsanpassung oder etwas, das den fokussierten Bereich etwas expliziter hervorheben kann?

Dan
quelle

Antworten:

99

Hier sind die relevanten Einstellungen:

pane-active-border-bg colour

pane-active-border-fg colour
    Set the pane border colour for the currently active pane.

Fügen Sie also Folgendes hinzu ~/.tmux.conf:

set-option -g pane-active-border-fg blue

Dadurch wird ein blauer Rand um den aktiven Bereich gesetzt. Die pane-active-border-bgOption kann auch für eine sichtbarere Lösung verwendet werden.

Alan Christopher Thomas
quelle
1
Ich sehe diese Option nicht auf meiner Manpage und sie wird von meiner Version von tmux nicht erkannt.
Dan
2
OK, danke für die Information. Ärgerlicherweise scheint tmux keine Möglichkeit zu haben, Ihnen zu zeigen, welche Version Sie ausführen.
Dan
3
@ Dan Haha, das ist mir auch aufgefallen. Ironischerweise denke ich, dass dies eine der Funktionen ist, die in 1.4 hinzugefügt wurden : tmux -V. Wenn Sie Ubuntu oder ein Debian-basiertes System verwenden, können Sie dies überprüfen dpkg -l | grep tmux.
Alan Christopher Thomas
13
Dies scheint die beste Antwort zu sein. Wenn Sie nur einen einzelnen Split haben, wird der Teiler nur eingefärbt und ändert sich nicht, egal welcher Bereich aktiv ist.
Von
3
Beachten Sie, dass dies in neueren Versionen behoben ist. Es färbt jetzt nur die Hälfte des Teilers, je nachdem, in welchem ​​Panel Sie sich befinden.
Chronial
33

Wie in einem anderen Beitrag beantwortet , ist es jetzt in tmux 2.1 möglich, die Farben einzelner Fenster festzulegen. Einer kann verwenden:

set -g window-style 'fg=colour247,bg=colour236'
set -g window-active-style 'fg=colour250,bg=black'

in der ~/.tmux.confDatei, um einen Unterschied zwischen den aktiven / inaktiven Bereichen anzuzeigen.

Mit Vim Wenn Sie feststellen, dass es mit Vim-Fenstern nicht funktioniert, liegt dies möglicherweise an dem von Ihnen verwendeten Farbschema. Versuchen Sie zuerst ein anderes Farbschema wie pablo. Weitere Details finden Sie im anderen Beitrag .

Dean.
quelle
1
@Solidak Möglicherweise handelt es sich um das von Ihnen verwendete Vim-Farbschema. Weitere Informationen finden Sie im anderen Beitrag.
Dekan.
Seltsam, dass die Optionen "Fensterstil" und "Fensteraktivstil" sind, aber es bezieht sich auf tmux-Fenster, nicht auf tmux-Fenster.
Zaid Gharaybeh
13

Passen Sie status-leftdas #PZeichenpaar an und verwenden Sie es. Dies ist die Fensternummer. Möglicherweise möchten Sie mehr als nur die Fensternummer in die Statusleiste aufnehmen. Hier ist jedoch ein Beispiel für die Zeile, die Sie nur ~/.tmux.conffür die Fensternummer zu Ihrer hinzufügen würden :

set-option -g status-left '#P'

Weitere Zeichenpaare finden Sie auf der tmux-Manpage: http://manpages.ubuntu.com/manpages/precise/en/man1/tmux.1.html

Alan Christopher Thomas
quelle
1
Ah, ich habe gerade festgestellt, dass Sie im fokussierten Bereich ein Highlight suchen, mehr als nur eine Statusanzeige. Hoffentlich ist das jetzt hilfreich. Entschuldigen Sie, dass Sie die Frage falsch verstanden haben.
Alan Christopher Thomas
5

Eine Lösung, die für mich funktioniert, besteht darin, am Ende des Hotkeys ein Anzeigefenster für einen Fensterwechsel hinzuzufügen. Dadurch werden alle Fensternummern angezeigt, wobei der aktuelle Bereich eine andere Farbe hat. Sie können auch Fensternummern <escape_key> + qanzeigen.

Ich verwende alt+h/j/k/l, um zwischen Fenstern zu wechseln, und ich verwende die folgende Bindung.

bind -n M-j select-pane -D \; display-pane                                                                                                                                                                                                               
bind -n M-k select-pane -U \; display-pane                                                                                                                                                                                                               
bind -n M-h select-pane -L \; display-pane                                                                                                                                                                                                               
bind -n M-l select-pane -R \; display-pane  
AravindKrishnan
quelle
0

Ich wollte, dass die Ränder des aktiven Fensters heller sind als bei anderen Fenstern, also habe ich mich dafür entschieden (funktioniert in tmux 1.8 mit CentOS 7):

~ / .tmux.conf-Fragment

# rgb hex codes from https://www.rapidtables.com/web/color/RGB_Color.html
set-option -g pane-active-border-fg '#33FF33' # brighter green
set-option -g pane-border-fg '#006600' # darker green

Die tmux-Manpage sagt, dass Hex-RGB-Farben angenähert werden, und ich finde die Hex-Codes leichter zu verstehen, als mich daran zu erinnern, dass "colour47" (von colour0-255) eine Art hellgrün ist (wie unter Wie funktioniert die tmux-Farbpalette beschrieben ?) Arbeit? ).

tmux man-page auszug:

message-bg colour
    Set status line message background colour, ...etc...
    or a hexadecimal RGB string such as ‘#ffffff’, which chooses the closest
    match from the default 256-colour set.
jgreve
quelle