
從 Cygwin/Mintty 使用時,我想對 Tmux 使用“一步”鍵盤快捷鍵。我無法讓它們工作,所以現在我必須使用 Tmux 的預設「兩步驟」鍵盤快捷鍵,我一點也不喜歡。
“一步”快捷方式:
- Ctrl+ Shift+W
- Ctrl+ Shift+X
「兩步」:
- 按Alt+ A,放開Alt+ A,按W
- Alt+ A,鬆開Alt+ A,按下X
我之前的設定是 Cygwin +康佐爾Z,帶有選項卡和分割/窗格的 Windows 控制台。不幸的是,ConsoleZ 仍然使用 Windows 控制台 conhost.exe,但也有其限制。所以我決定使用 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,也許還有其他一些。