有时,我必须使用嵌套的 tmux 会话(tmux in tmux)。通过复制模式滚动在内部 tmux 会话中不起作用,因此这使我在内部会话中非常不方便。
我听说有元密钥可以将 tmux 命令发送到内部会话。有有效的按键绑定可以在内部会话中滚动吗?
tmux copy-mode
会做的。运行该命令将在内部会话中更改为复制模式,您可以像往常一样滚动。
另一个选项是使用bind
和send-prefix
,将某个键绑定到send-prefix
操作,该操作将前缀发送到嵌套会话。就我而言,它是:
set -g prefix C-a
bind a send-prefix
Run Code Online (Sandbox Code Playgroud)
默认前缀是C-b
,在这种情况下使用可能更合理b
。
这样,您只需 Control+A(或 B 或其他),然后释放 Control 并再次按相同的键(在我的情况下为 A,B 对于使用默认C-b
前缀的人来说似乎更好,恕我直言)。这会将前缀发送到内部会话。现在,无论您按下什么键,都会在内部会话中触发一个命令。即: [Control+A] 然后 [%] 为我垂直分割窗口。当然,这是在外部会议上。然后,通过send-prefix
我提到的绑定,我可以执行 [Control+A],然后 [A],然后 [%],它会在内部会话中分割窗口。
它非常漂亮,在连接到服务器时对于滚动内容、搜索等很有用,一旦你习惯了它,它就会变成肌肉记忆。另外,您可以执行 [Ctrl+A],然后 [A],然后 [D] 来分离内部会话,这将允许您建立exit
ssh 连接,或者如果您有在连接时自动启动 tmux 的配置,则完全结束 SSH 连接。
当然,您可以绑定send-prefix
到其他键,可能-n
可以使用 [Ctrl+A] 作为前缀,也可以使用 [Ctrl+S] 将前缀发送到内部会话。
归档时间: |
|
查看次数: |
695 次 |
最近记录: |