
我正在使用 Byobu(與 Tmux,在 gnome-terminal 內部),並且它的鍵綁定有問題(我可能無法理解)。
我啟動 byobu,然後打開幾個窗口,從其中一個窗口,我 ssh 到另一台機器並在那裡啟動 byobu。無論我按Ctrl-c或Ctrl- 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 也能工作。