Змушення TMUX використовувати Alt + Num для вибору вікна


10

Я возився з TMUX, і мені подобаються можливості конфігурації.

Список вікон внизу змушує мене думати, що той самий ярлик для зміни вікон в Irssi повинен працювати в TMUX, але це не так.

Тому на даний момент я повинен натиснути Cb, а потім номер, щоб відкрити це вікно. Я щасливий, що у Cb є мій звичайний префікс (наприклад, для Cb? Для допомоги, Cb: запис команди) Але було б здорово, якби я міг використовувати як C-b + Numkey, так і Alt+ NumKeyдля зміни вкладок.

Було б ще крутіше, якби він міг виявити, чи є у вікні Irssi, а потім ігнорувати Alt+ NumKey, щоб я міг ще змінюватися між вікнами Irssi.

Відповіді:


14

Перемикання вікон за допомогою Alt можна зробити, додавши:

# switch windows alt+number
bind-key -n M-1 select-window -t 1
bind-key -n M-2 select-window -t 2
bind-key -n M-3 select-window -t 3
bind-key -n M-4 select-window -t 4
bind-key -n M-5 select-window -t 5
bind-key -n M-6 select-window -t 6
bind-key -n M-7 select-window -t 7
bind-key -n M-8 select-window -t 8
bind-key -n M-9 select-window -t 9

до вашого ~/.tmux.conf Це від: https://github.com/proft/dotfiles/blob/master/.tmux.conf

Далі, щоб це не було, якщо irssi знаходиться в активному вікні:

#switch windows alt+number, unless we are running irssi
bind -n M-1 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 1' 'send M-1'
bind -n M-2 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 2' 'send M-2'
bind -n M-3 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 3' 'send M-3'
bind -n M-4 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 4' 'send M-4'
bind -n M-5 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 5' 'send M-5'
bind -n M-6 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 6' 'send M-6'
bind -n M-7 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 7' 'send M-7'
bind -n M-8 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 8' 'send M-8'
bind -n M-9 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 9' 'send M-9'
bind -n M-0 if 'test `tmux list-panes -F "#W"` != "irssi"' 'select-window -t 0' 'send M-0'

Який приблизно читає клавішу "Зв'язати" [без необхідності префіксу], до дії: перевірити, чи поточна панель не названа irssi, а якщо ні, то виберіть відповідне вікно, інакше повторно надішліть ключ, щоб основна програма [irssi] може отримати.


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