Как быстро отправить команды на вложенные сессии tmux?

30

У меня есть следующее в моем .tmux.conf

set -g prefix M-j
bind-key j  send-prefix

Мне нужно нажать ( Atl+ J) + ( J) + bound-key, чтобы отправить что-то во вложенный сеанс tmux. Я чувствую, что это довольно медленно. Есть ли лучший способ? Например, я хотел бы иметь возможность делать ( Alt+ J) + (2x связанный ключ), чтобы делать вещи во вложенном сеансе. Я постоянно выполняю команды в верхнем сеансе tmux вместо того, чтобы выполнять их во вложенном. Кроме того , как приходят Everybody привязок prefixк C-a? Я считаю, что набирать эту комбинацию очень медленно и неприятно. Я что-то пропустил?

Рольф
источник
Хотя мне тоже не нравится Ctrl-A, ваш комментарий о его неприятности говорит о том, что ваш мизинец может доходить до управляющей клавиши. Если это так, вы можете рассмотреть переназначение capslock в качестве управляющей клавиши - это то, что я делаю, чтобы держать мой палец под контролем, и тогда Ctrl + A также менее сложен.
Конюшня
@Stabledog ваше предположение верно. Тем не менее я сопоставил капслок с ESC. Как вы нажимаете capslock + a?
Рольф
Комбо Ca живет в GNU Screen, который появился еще до tmux.
Кусалананда

Ответы:

33

На одно нажатие клавиши отправлять команду во вложенный сеанс будет меньше, если вы выберете другую клавишу. Я использую Ctrltдля своего стандартного префикса и Ctrlaдля вложенных сессий.

# set prefix key to ctrl+t
unbind C-b
set -g prefix C-t

# send the prefix to client inside window
bind-key -n C-a send-prefix

Обратите внимание, что я использую -nпереключатель. Из записи связующего ключа в man tmux:

если указан ключ -n, нет необходимости использовать префиксный ключ, команда привязана только к ключу.

Так, в качестве примера, Ctrlt, cоткрывает новое окно в tmux; Ctrla, cДелает то же самое в гнездовой сессии.

jasonwryan
источник
Потрясающе! Это делает вложенную сессию такой же быстрой, как и обычные.
Рольф
1
Нет необходимости отвязываться, C-bесли вы к этому привыкли. bind-key -n C-a send-prefixдолжно быть достаточно.
utapyngo
0

Причиной ctrl-a является то, что большинство хакеров Unix (насколько я знаю) переназначают заглавные буквы для контроля. Это делает все Ctrl-ops быстрее, особенно Ctrl-A.

user256123
источник
2
Да, как я уже сказал в предыдущем комментарии выше: как вы, люди, одновременно нажимаете capslock + a? Я использую мизинец, чтобы нажать или один или другой.
Рольф