cara menutup semua panel tetapi panel saat ini di tmux

13

Saya memiliki kunci terikat untuk mengatur panel sesuai dengan keinginan saya, tetapi kadang-kadang hal-hal menjadi kacau atau tidak terkendali dan saya ingin menutup semua panel dan menjalankan kembali skrip. Apakah ada tmuxperintah sederhana untuk menutup semua panel kecuali yang sedang saya ikuti?

Kekuatan Digital
sumber

Jawaban:

21

Anda dapat menggunakan perintah "kill-pane".

 kill-pane [-a] [-t target-pane]
               (alias: killp)
         Destroy the given pane.  If no panes remain in the containing window, it is also destroyed.  The -a option kills all but the pane given with -t.

Jadi, misalnya jika Anda ingin membunuh semua panel kecuali untuk panel 0:

kill-pane -a -t 0

Jika Anda tidak tahu nomor pane yang Anda gunakan, Anda dapat menggunakan perintah "display-panes":

 display-panes [-t target-client]
               (alias: displayp)
         Display a visible indicator of each pane shown by target-client.  See the display-panes-time, display-panes-colour, and display-panes-active-colour
         session options.  While the indicator is on screen, a pane may be selected with the '0' to '9' keys.
JC Yamokoski
sumber
1
Terima kasih saya akhirnya menggunakan panel kill tapi saya kesulitan membuatnya berfungsi sepanjang waktu. Apa yang akhirnya saya lakukan adalah membagi jendela (split-window-h) dengan cara itu saya bisa memastikan ada lebih dari 1 panel, kemudian saya melakukan (break-pane -d) untuk memindahkan bingkai saya saat ini ke jendela baru di latar belakang. Lalu aku melakukan kill-window. Dengan begitu saya akan berada di panel di jendela baru (satu-satunya).
Kekuatan Digital
@DigitalPowers Saya suka solusi Anda, tetapi kadang-kadang bisa membuat panel split sulit ditemukan. Apalagi jika Anda menutup banyak panel. Karena saya mengikat ke kunci, saya menggunakan opsi hacky dari swap-pane -Uperintah "cukup" untuk memindahkan panel ke posisi 0, dan kemudian kill-pane -a -t 0.
Edd Steel
6
Catatan: tmux kill-pane -abunuh semua kecuali panel saat ini. Anda tidak perlu menentukan -ttarget jika Anda suka panel saat ini.
docwhat
7

Ada juga "^ b!" menurut http://www.dayid.org/os/notes/tm.html (Saya juga mencobanya dan berhasil bagi saya)

George Boulos
sumber
4
Hei! sepertinya berfungsi, tetapi yang sebenarnya dilakukannya adalah memindahkan panel itu ke "jendela" baru - semacam menceraikannya dari jendela induk - jadi panel lain masih ada, mereka hanya di jendela yang berbeda.
Brad Parks