send-prefix
Команда может быть использована для отправки префикса нажатия клавиши (процесс обкатки) активная панели. По умолчанию префикс Cb и Cb обязан send-prefix
(так , что удар его дважды посылает один Cb на активной панели). Это как раз то, что нам нужно для доступа к привязкам внутреннего экземпляра tmux .
Первый Cb фиксируется «внешним» экземпляром tmux в качестве его префиксного ключа. Второй захватывается «внешним» экземпляром tmux и запускает привязку Cb ( send-prefix
). Это отправляет Cb на активную панель внешнего экземпляра. Процесс, запущенный на этой панели, является (в конечном счете, через экземпляр ssh ) «внутренним» экземпляром tmux . Он захватывает Cb в качестве префиксного ключа. Теперь ваше следующее нажатие клавиши будет пропущено через внешний экземпляр tmux и захвачено внутренним, чтобы вызвать привязку.
Чтобы вызвать привязку c ( new-window
) в экземпляре tmux второго уровня , вы должны набрать Cb Cb c . Для экземпляра tmux третьего уровня вы должны набрать Cb Cb Cb Cb c .
Это удвоение для каждого уровня может раздражать, если вы обычно имеете дело с несколькими слоями tmux . Если вы можете сэкономить какой-то другой ключ, вы можете сделать привязку без префикса, чтобы упростить ввод (возможно):
bind-key -n C-\ send-prefix
bind-key -n C-^ send-prefix \; send-prefix
Создать новое окно в tmux второго уровня : C- \ c
Создать новое окно в tmux третьего уровня : C- ^ c (или C- \ C- \ c )
Если у вас есть ограниченное количество команд tmux, которые вы хотите (легко) отправить в экземпляры tmux более низкого уровня , вы можете вместо этого использовать их send-keys
для создания некоторых конкретных привязок (возможно, только в вашем экземпляре tmux верхнего уровня ):
bind-key C-c send-keys C-b c
bind-key C send-keys C-b C-b c
Создать новое окно в tmux второго уровня : Cb Cc
Создать новое окно в tmux третьего уровня : Cb C