我习惯了tmux,所以我希望Byobu使用Ctrl + B作为转义序列。我点击F9,更改转义序列和B
。
但是当我在shell上按下Ctrl + B时,它会移回一个字符而不是让byobu / tmux处理它。
答案 0 :(得分:2)
首先,我通常不会使用F9
菜单,所以这对我来说相对较新。但是,当我这样做并按下B
(没有ctrl
因为假定/强制),它立即正常工作(没有重启)。我不确定为什么它不适用于您的配置。
由于byobu
确实保留了自己的配置项存储并强制screen
/ tmux
使用其版本,因此您可以找到要更改的内容通过阅读相应的人/帮助页面查看~/.byobu/
和如何来更改它。
您可以在幕后编辑byobu
的配置文件(并不总是一个好主意,但这里应该可以接受)。由于byobu
使用screen
或tmux
(根据安装的内容),答案可以位于~/.byobu/keybindings
(屏幕)或~/.byobu/keybindings.tmux
。< / p>
我一直在使用screen
和tmux
...选择一个(默认为tmux
,如果已安装,我认为)并继续使用。
检查以确保echo $HOME
打印出您期望的内容(不是空白行)。如果该主目录中没有名为.byobu
的目录,则byobu
安装会被重置,或者您的主目录中没有设置正确的权限;试试mkdir "${HOME}/.byobu"
,如果它不起作用,那可能是你问题的一部分。
screen
来自man screen
...
escape xy Set the command character to x and the character generating a literal command character (by triggering the "meta" command) to y (similar to the -e option). Each argument is either a single character, a two-character sequence of the form "^x" (meaning "C-x"), a backslash followed by an octal number (specifying the ASCII code of the character), or a backslash followed by a second character, such as "\^" or "\\". The default is "^Aa".
...
~/.byobu/keybindings
的第一行应该有byobu
来源命令,因此请勿进行更改。之后, 添加 以下内容:
escape "^Bb"
register x "^B"
bindkey "^B"
(这是byobu
对我的安装所做的逐字记录。从历史上看 - 因为我在大多数情况下使用screen
/ tmux
而没有byobu
- 我实际上只是设置:
escape "^Bb"
defescape "^Bb"
这可能不是最好的方式,它有一些历史性的弊端,但它对我有用。)
tmux
同样,来自man tmux
:
prefix key Set the key accepted as a prefix key. prefix2 key Set a secondary key accepted as a prefix key.
我的~/.byobu/keybindings.tmux
没有源命令,因此我的文件只包含以下内容:
unbind-key -n C-b
set -g prefix ^B
set -g prefix2 ^B
bind b send-prefix
了解您的操作系统和软件版本将非常有用。我在ubuntu-13.10上用byobu-5.60-0ubuntu1,screen-4.0.3-14ubuntu10和tmux-1.8-4进行了测试。