2012-02-12 15 views
22

Pencerede tüm pencerelere değil, aynı komutu tmux'taki tüm pencerelere göndermenin bir yoludur. Senkronize et - bölmeleri bir pencerede tüm bölüme gönder. Ekranda 'at' gibi bir şeye ihtiyacım var.Tüm pencereye tmux komutunu gönder

Yardımlarınız için teşekkürler.

cevap

14

Hep böyle bir şey yapabileceğini:

bind C-e command-prompt -p "session?,message?" "run-shell \"tmux list-windows -t %1 \| cut -d: -f1\|xargs -I\{\} tmux send-keys -t %1:\{\} %2\"" 
+1

Bu harika - küçük bir ekleme. Aynı şeyi yapmak istedim, ama aynı pencereyi her pencerede tüm bölmelere göndermek istedim. Senkronize paneller ayarı ile kolayca yapılabilir! – dsummersl

+1

'tmux display -p" #S "' – NgaNguyenDuy

+0

şu anki oturuma da sahip olursunuz, çok işe yarıyor! –

2

Böyle bir şey yapabileceğini:

session=mysession 
message="hello world" 
tmux list-windows -t $session|cut -d: -f1|xargs -I{} tmux send-keys -t $session:{} $message 

Ayrıca bu gibi tmux.conf bir tuşa bu bağlamak olabilir https://gist.github.com/2773454

Ancak bu, her bölme için yürütülür, ancak buna göre ayarlama yapabilirsiniz.

Tüm bunlar, başarmaya çalıştığınız şeyin bir örneği, tüm bölmelerde ~/.zsh kaynağını oluşturmaktır.