我尝试使用 f 键在 GNU Screen/PuTTy 上切换窗口,但无法使其工作。
这是我当前的.screenrc:
bindkey -k k1 select 1
bindkey -k k2 select 2
bindkey -k k3 select 3
(...)
将 PuTTy 键盘选项更改为“XTerm R6”不起作用。我也不知道如何发现当我按下 Putty 上的某个键时屏幕接收到的键码。
编辑:
问题解决了!原来我必须关闭并重新打开屏幕会话才能使配置生效(我正在拆卸并重新连接)。
我当前的 .screenrc 是:
bindkey "\033OP" select 0
bindkey "\033OQ" select 1
bindkey "\033OR" select 2
bindkey "\033OS" select 3
bindkey "\033[15~" select 4
bindkey "\033[16~" select 5
bindkey "\033[17~" select 6
bindkey "\033[18~" select 7
bindkey "\033[19~" select 8
并且PuTTy设置为VT100+。
答案1
首先,你需要弄清楚 F1 键会产生什么效果。我使用 emacs 来做到这一点。
- 使用 putty 远程登录您的系统
- 运行 screen,然后
- 跑步
emacs -nw
- 切换到
*scratch*
缓冲区(或其他) - 命中
C-q F1
(C-q
是并且这将放置您从密钥quoted-insert
中获得的精确字节)F1
- 将该字符串复制到你的 .screenrc
我的系统是 windows 上的 putty,访问 Debian 不稳定 amd64,屏幕为 4.1.0~201203,得到了^[[11~
,所以我把
bindkey "^[[11~" select 1
在我的 .screenrc 中它似乎有效。
希望这可以帮助。