Як закрити інші вікна в tmux?


8

Я записую деякі функції, .bashrcщоб зробити їх tmuxпростим у використанні:

#!/bin/bash
# .bashrc

# vim            tmux
#-----  --------------------
tabc()  { tmux kill-window; }
tabe()  { tmux new-window; }
tabf()  { tmux find-window $@; }
tabn()  { tmux next-window; }
tabo()  { ; }                         # <-- How to `tabonly`?
tabp()  { tmux previous-window; }
qa()    { tmux kill-session; }
sp()    { tmux split-window; }
vsp()   { tmux split-window -h; }
on()    { tmux kill-pane -a; }

typeset -fx tab{c,e,f,n,o,p} {,v}sp qa on

Я хочу реалізувати tabonlyкоманду, але не знаю як.

Відповіді:


4

З вікном, яке ви хочете зберегти як поточне вікно, просто дзвоніть next-windowі kill-windowповторно, поки next-windowне виходить з ладу:

while tmux next-window 2> /dev/null; do
    tmux kill-window
done

5
Наступний випуск tmux (тобто 1.7) повинен kill-window -aбуде знищити всі вікна, крім поточного вікна.
Кріс Джонсен

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.