私はスクリーンに複雑なシステムを使用しています。デフォルトのエスケープは、バックティックである\ 140 \ 140に設定されています。Ctrl-Aは、Zsh内でのEmacsとコマンドラインの編集の両方を複雑にし、私はCtrl-O(ほとんどの画面アクションでの両手操作)が嫌いです。
「s」を画面1に再バインドして、新しいセッションが1から始まるキーボード上で左から右に作成されるようにします。これにより、永続ウィンドウまたは参照ウィンドウと見なす画面0を予約できます。(バックティック)1、(バックティック)2、(バックティック)3への非常に迅速な片手ジェスチャーで、ウィンドウ間をスワップします。
UNIX環境でbacktickを使用する場合の問題は、シェル/ perlスクリプトコードをカットアンドペーストしようとした場合です。このため、エスケープ文字を切り替えるためにF11 / F12キーをバインドします。
bindkey -d -k F1 escape ^O^O # bound to F11
bindkey -d -k F2 escape \140\140 # bound to F12
これにより、カットアンドペースト操作を行うときに、エスケープがCtrl-Oにスワップされます。ダブルティックを押すのは簡単であり、ほとんどの画面操作では適切なトレードオフであることがわかりました。
F12を押してモードを切り替え、キャプションを使用してモードを示すことができる新しいソリューションでこの答えを再検討してください。
## command characters
escape \140\140 # default is `
## sets caption and escape toggle
bindkey -d -k F2 process a # bound to F12
## initial caption
caption always '%{= kW}%?%F%{+b KW}%:%{= kK}%? %= %?%F%{-b .c}>>>%{-}%? | %-w%{mW}%n* %t%? @%u%?%{-}%+w '
## registers to toggle bindkeys
register a "\140:eval 'bindkey -d -k F2 process b' 'process c' 'escape \\017\\017'^M"
register b "\017:eval 'bindkey -d -k F2 process a' 'process d' 'escape \\140\\140'^M"
## registers to change captions
register c "\140:caption string '%{= kW}%?%F%{+b mW}%:%{= kK}%? %= %?%F%{.c}ALT%{-}%? | %-w%{KW}%n* %t%? @%u%?%{-}%+w '^M"
register d "\017:caption string '%{= kW}%?%F%{+b KW}%:%{= kK}%? %= %?%F%{.c}>>>%{-}%? | %-w%{mW}%n* %t%? @%u%?%{-}%+w '^M"