我习惯了 tmux,所以我希望 Byobu 使用 Ctrl+B 作为转义序列。我按 F9,更改转义序列,然后B
.
但是当我在 shell 上按 Ctrl+B 时,它会向后移动一个字符,而不是让 byobu/tmux 处理它。
我习惯了 tmux,所以我希望 Byobu 使用 Ctrl+B 作为转义序列。我按 F9,更改转义序列,然后B
.
但是当我在 shell 上按 Ctrl+B 时,它会向后移动一个字符,而不是让 byobu/tmux 处理它。
首先,我通常不使用F9
菜单的东西,所以这对我来说相对较新。但是,当我这样做并按下时B
(不ctrl
,因为这是假定/强制的),它立即正常工作(无需重新启动)。我不确定为什么它不适用于您的配置。
由于byobu
确实保留了自己的配置项存储并强制screen
/tmux
使用其版本,因此您可以通过查看找到要更改的内容~/.byobu/
,以及如何通过阅读相应的手册/帮助页面来更改它。
byobu
您可以在幕后编辑的配置文件(并不总是一个好主意,但在这里应该可以接受)。由于byobu
使用screen
或tmux
(基于安装的内容),答案可以驻留在~/.byobu/keybindings
(屏幕)或~/.byobu/keybindings.tmux
。
我玩弄了两者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
's source命令,所以不要改变它。在它之后,添加以下内容:
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 对此进行了测试。