Forcer la mise à jour de la barre d'état tmux

11

Je voudrais avoir l'heure actuelle dans ma tmuxligne d'état. Je suis allé jusqu'à:

$ tmux set status-right '"#22T" %H:%M:%S %d-%b-%y'

Cela modifie le temps dans la ligne d'état pour inclure les secondes. Cependant, la ligne d'état n'est mise à jour que si "quelque chose se passe": je change de fenêtre, change de volet, etc. Comment puis-je configurer tmux pour mettre à jour la ligne d'état toutes les secondes, afin d'avoir une horloge en cours d'exécution?

gerrit
la source

Réponses:

11

Vous pouvez également utiliser

tmux refresh-client -S

pour actualiser manuellement la barre d'état au lieu de compter sur l'intervalle d'actualisation. Je l'utilise comme méthode de mise à jour pilotée par les événements, par exemple lors du changement de volet. Dans mon .tmux.conf, j'ai changé ce qui suit:

bind -r k select-pane -U
bind -r j select-pane -D
bind -r l select-pane -R
bind -r h select-pane -L

à:

bind -r k select-pane -U\; refresh-client -S
bind -r j select-pane -D\; refresh-client -S
bind -r l select-pane -R\; refresh-client -S
bind -r h select-pane -L\; refresh-client -S

ps: Au cas où cela ferait une différence, j'utilise tmux 1.8 pour le moment.

gospes
la source
19

Définissez l'inversion d'état pour qu'il soit mis à jour toutes les secondes:

tmux set status-interval 1
qqx
la source
1
Mais souvenez-vous de l'utilisation du processeur et de la durée de vie de la batterie sur un OSX Mavericks arstechnica.com/apple/2013/06/…
vrybas