我想在 Cygwin/Mintty 中使用 Tmux 的“1 步”键盘快捷键。我无法让它们工作,所以现在我不得不使用 Tmux 的默认“2 步”键盘快捷键,我一点也不喜欢这个。
“1步”快捷方式:
- Ctrl+ Shift+W
- Ctrl+ Shift+X
“两步”步骤:
- 按下Alt+ A,松开Alt+ A,按下W
- Alt+ A,松开Alt+ A,按下X
我之前的设置是 Cygwin +康佐尔,一个带有标签和分割/窗格的 Windows 控制台。不幸的是,ConsoleZ 仍然使用 conhost.exe,即 Windows 控制台,具有其所有限制。所以我决定改用 Mintty,它是一个与 xterm 兼容的控制台。但是,Mintty 没有标签或窗格,所以我决定使用 Tmux,因为它可以同时提供这两种功能。
但是,由于控制台的限制,Tmux 使用命令前缀,这是任何命令的第一步。为了方便起见,我将我的命令绑定到 Alt-a。因此,所有命令都是 Alt-a,放开 Alt-a,按其他键。不太符合人体工程学。
我一直在查看 Mintty 和 Tmux 文档,寻找任何可以提供帮助的内容,但我可能仍然遗漏了一些东西。
到目前为止我成功绑定Ctrl+Tab和Ctrl++Shift可Tab循环切换标签我还发现Mintty 确实发出了一些特殊的转义序列对于我想要使用的快捷方式(++ Ctrl)。但是,我不知道如何将它们绑定到我想要的命令。Shift<...>
我还看到 Tmux 可以使用没有前缀的键盘快捷键,方法是:
bind-key -n <key> <command>
所以从理论上来说我已经非常接近了。
问题是:我如何将特殊转义序列映射到命令?我认为应该可以使用用户键来实现,就像 Ctrl-Tab 的示例一样,但是如何列出或以其他方式查看 Mintty 为我想要的键盘快捷键生成的 Tmux 转义序列?
该列表将是:Ctrl+ Shift+ \,Ctrl+ Shift+ -,Ctrl+ Shift+ X,Ctrl+ Shift+ T,Ctrl+ Shift+ W,Ctrl+ Shift+ →/↑/→/↓,Ctrl+ Shift+ Z,也许还有其他一些。