Tôi sử dụng một hệ thống phức tạp cho màn hình. Lối thoát mặc định của tôi được đặt thành \ 140 \ 140, đó là backtick. Ctrl-A làm phức tạp cả Emacs và chỉnh sửa dòng lệnh cho tôi trong Zsh và tôi không thích Ctrl-O (2 thao tác tay cho hầu hết các hành động trên màn hình).
Tôi bật lại màn hình 1 để các phiên mới được tạo từ trái sang phải trên bàn phím bắt đầu từ 1. Điều này cho phép tôi đặt trước màn hình 0 cho những gì tôi cho là các cửa sổ tham chiếu hoặc liên tục. Đó là một cử chỉ rất nhanh với (backtick) 1, (backtick) 2, (backtick) 3 để trao đổi giữa các cửa sổ.
Vấn đề với việc sử dụng backtick trong môi trường unix là khi cố gắng cắt và dán mã script shell / perl. Vì lý do này, tôi bindkey F11 / F12 để chuyển giữa nhân vật thoát của tôi.
bindkey -d -k F1 escape ^O^O # bound to F11
bindkey -d -k F2 escape \140\140 # bound to F12
Điều này sẽ hoán đổi lối thoát sang Ctrl-O khi tôi thực hiện các thao tác cắt và dán. Tôi thấy việc đánh dấu hai lần rất đơn giản và đánh đổi tốt cho hầu hết các thao tác trên màn hình.
Xem lại câu trả lời này bằng một giải pháp mới hơn cho phép chuyển đổi chế độ bằng cách nhấn F12 và sử dụng chú thích để chỉ ra chế độ.
## 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"