tmux visuelle Anzeige, ob die Fenster synchronisiert sind

13

Ist es für tmux möglich, eine visuelle Anzeige zu haben, wenn für das Fenster synchronisierte Fenster aktiviert sind?

Vielleicht ändert sich die Statusleiste in blau oder irgendwo erscheint nur ein Stern?

Ich stelle oft synchronisierte Fenster ein, gehe für ein paar Stunden und komme zurück, um zu vergessen, ob es aktiviert ist oder nicht.

cvondrick
quelle

Antworten:

12

Die pane_synchronizedFormatvariable kann mit einer bedingten Formatierung verwendet werden, um Bits der verschiedenen Statusoptionen unter Verwendung des Formats anzupassen.

Sie könnten  SYNC!!!in einem blauen Hintergrund am Ende hinzufügen status-right:

set-option -ag status-right '#{?pane_synchronized, #[bg=blue]SYNC!!!#[default],}'

Oder Sie können dem Eintrag in der Fensterliste blaue Sternchen hinzufügen:

set-option -gw window-status-current-format '#{?pane_synchronized,#[fg=blue]***#[default],}#I:#W#F#{?pane_synchronized,#[fg=blue]***#[default],}'

(das #I:#W#Fin der Mitte ist das Standardformat)

Möglicherweise möchten Sie auch anpassen, window-status-formatob Sie wissen möchten, wann die Fenster eines inaktiven Fensters synchronisiert werden.

Chris Johnsen
quelle
3
Danke für die Tipps! Ich kombiniert es mit Unicode - Zeichen folgende Fenster Etiketten zu produzieren: " #{?pane_synchronized,⛓ , }#W ".
kstep
ging mit einer etwas aufgeblähten Lösung, und FWR mein 🧠 denkt 🏊‍♀️ beim Nachdenken über das Wort synchronisieren 🤷‍♂️ # Stile für Fenster ## Stile für aktuell aktives Fenster ## setw -g window-status-current-format "#[fg=#000000]#[bg=colour208] #I:#W#{?window_zoomed_flag,🔍,}#{?pane_synchronized,🏊‍♀️🏊‍♀️,}" Stile für inaktive Fenster, dh. Hintergrundfenster setw -g window-status-format "#I:#W#{?window_zoomed_flag,🔍,},#{?pane_synchronized,🏊‍♀️🏊‍♀️,}" Und ja, das Mag-Objektiv sieht aus wie ein Ping-Pong-Paddel ... ich muss daran arbeiten.
ipatch
1

Dies sind die Zeilen aus meiner tmux.conf, die die Fenstersynchronisation ein- und ausschalten. In den Befehlen stelle ich auch die Farbe der Statusleiste ein.

bind C-y set-window-option synchronize-panes on \; set-window-option status-bg red \; display-message "Panes synchronized."
bind C-u set-window-option synchronize-panes off \; set-window-option status-bg green \; display-message "Panes un-synchronized."

Dies ist eine unvollständige Lösung für mich, da die Statusleiste rot bleibt, wenn ich zu einem anderen Fenster wechsle, in dem die Fenster nicht synchronisiert sind.

Mnebuerquo
quelle
0

Folgendes verwende ich in meiner Konfiguration:

set -g status-left " #[fg=white,bold][#h] #{?pane_synchronized,#[fg=green]SYNC ,#[fg=yellow]SYNC }"

Es zeigt den Hostnamen auf der linken Seite der Statusleiste an, dann das Wort "SYNC" in grün, wenn es synchronisiert ist und gelb, wenn nicht.

John C
quelle