如何在嵌套遠端會話中使用 Byobu 鍵綁定?

如何在嵌套遠端會話中使用 Byobu 鍵綁定?

我正在使用 Byobu(與 Tmux,在 gnome-terminal 內部),並且它的鍵綁定有問題(我可能無法理解)。

我啟動 byobu,然後打開幾個窗口,從其中一個窗口,我 ssh 到另一台機器並在那裡啟動 byobu。無論我按Ctrl-cCtrl- a- c,我都不知道如何在此遠端會話中建立和切換視窗。

注意:如果我輸入Shift-F12我可以使用遠端會話中的功能鍵在視窗之間切換,但這不太理想,因為我還需要在主會話中的視窗之間切換。

有任何想法嗎?

在此先感謝您的幫忙。

答案1

我發現使用Shift-F12開啟/關閉外部 byobu 的鍵綁定更容易記住和使用。唯一需要記住的新鍵是Shift-F12,然後可以使用正常的 F- 鍵綁定來控制內部 byobu。

找到了解決方案這裡

同樣有用的是,它Shift-F12列在 byobu 內部幫助的鍵綁定列表中,可以透過Shift-F1選單F1的「幫助 - 快速入門指南」存取。

答案2

我假設您將 byobu 配置為使用Ctrl-A作為 tmux 的轉義序列。

您在終端機中鍵入的命令首先由本機 tmux 實例處理,然後由嵌套的 tmux 會話處理。這意味著您需要轉義兩次才能轉到嵌套實例:

  • Ctrl- a c# 在本機會話中開啟一個視窗
  • Ctrl- a Ctrl- a c# 在遠端會話中開啟一個視窗

如果第二行不起作用,請嘗試(如@artm 指出

  • Ctrl- a a c# 第二個沒有Ctrl

答案3

Ctrl-a Ctrl-a也不適合我。我發現它在評論以下行後有效.byobu/keybindings.tmux

unbind-key -n C-a

另一種解決方法是使用內部 Tmuxsend-key指令:

  • 選擇運行嵌套會話的窗格或視窗
  • 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 也能工作。

相關內容