Як використовувати зв'язки клавіш Byobu у вкладеному віддаленому сеансі?


22

Я використовую Byobu (з Tmux, всередині gnome-terminal), і у мене виникають проблеми з його вкладками (які я, мабуть, не розумію).

Я запускаю byobu, відкриваю кілька вікон потім, з одного з цих вікон я заходжу в іншу машину і запускаю там Byobu. Незалежно від того , якщо натиснути Ctrl- cабо Ctrl- a- cя не знаю , як створювати і перемикатися між вікнами в цій віддаленій сесії.

Примітка: якщо я входжу Shift- F12я можу перемикатися між вікнами за допомогою функціональних клавіш на віддаленому сеансі, але це менш ніж ідеально, оскільки мені також потрібно перемикатися між вікнами в основному сеансі.

Будь-які ідеї?

Заздалегідь дякую за вашу допомогу.


1
Маючи два екземпляри tmux - це дуже заплутано: подумайте про те, щоб уникнути цього, якщо можете. Це сказав, що я відповів на ваше запитання.
Дженніфер Вілсон

Відповіді:


20

Я припускаю, що ви налаштували byobu на використання Ctrl- Aяк послідовність відходу tmux.

Команди, які ви вводите у свій термінал, спочатку обробляються вашим локальним екземпляром tmux, потім обробляються вкладеним сеансом tmux. Це означає, що вам потрібно двічі бігти, щоб перейти до вкладеного екземпляра:

  • Ctrl- a c# відкриває вікно у вашому локальному сеансі
  • Ctrl- a Ctrl- a c# відкриває вікно у віддаленому сеансі

Якщо другий рядок не працює, спробуйте (як вказував @artm )

  • Ctrl- a a c# секунда безCtrl

2
Ще одна ідея: якщо ви робите це часто, замініть командний ключ для внутрішньої машини на щось інше, наприклад, ^ B.
poolie

7
не працює для мене. Подвійний ctrl-перехід на іншу вкладку місцевого сеансу byobu
Гелін Луо

1
@green У мене виникає та ж проблема, два рази натискаючи Ctrl-a змінює вкладку у зовнішньому сеансі.
вихід з системи

6
це має бути Ctrl-a a c(другий "а" без контролю)
artm

16

Мені Shift-F12вдалося ввімкнути / вимкнути зовнішні клавіші Byobu - трохи простіше запам’ятати та використовувати. Єдиний новий ключ, який слід запам’ятати Shift-F12, і тоді внутрішній байбу можна керувати за допомогою звичайних зв'язків клавіш F.

Знайшли це рішення тут .


1
Це також корисно для можливості надсилати F-ключі до програми, що працює всередині byobu. Як також зазначалося в: askubuntu.com/questions/146585/…
mp3foley

2

Ctrl-a Ctrl-aтакож не працював для мене. Я виявив, що це спрацювало, прокоментувавши наступний рядок у .byobu/keybindings.tmux:

unbind-key -n C-a

Іншим вирішенням буде використання внутрішньої send-keyкоманди Tmux :

  • виберіть область або вікно, де працює вкладений сеанс
  • натисніть Ctrl+ a :enter, send-key -2а потім команду або клавішу, яку потрібно надіслати

Приклади:

  • Ctrl+ a : send-key -2 c= створити нове вікно
  • Ctrl+ a : send-key -2 p= перехід до попереднього вікна
  • Ctrl+ a : send-key -2 n= перехід до наступного вікна

Не дуже інтуїтивно зрозумілий, але працює навіть із Putty.


Дякую за це! Я зміг встановити свій локальний префікс byobu на Cb, а мій віддалений префікс byobu на Ca, змінивши ~ / .byobu / keybindings.tmux. Спроба встановити це в ~ / .byobu / .tmux.conf чомусь не вийшло.
Marc Laugharn
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.