Ctrl我正在使用 putty > screen > vim,并且 screen 为+发送相同的序列,Right并Right在 vim 的应用程序模式下发送相同的序列。
有一个选项可以让 putty 在应用程序模式下发送光标模式序列(禁用应用程序光标键模式)并且可以工作,但是当引入屏幕时,有些事情就不正确了。
我该如何解决这个问题?
答案1
如果我设置term = xterm
putty 和term=putty
in screenrc
,它似乎可以工作。
答案2
只有似乎上班。正如我在(这个问题之后)指出的如何在 putty 上启用 GNU 屏幕的控制组合键?,不修改时的区别screenrc
是终端描述screen
设置了终端的应用模式。
但是,使用此解决方法在屏幕中运行的应用程序可能会发送屏幕无法识别的转义序列。使用
infocmp putty screen
看看,这些包括
hpa
(绝对水平位置),
vpa
(绝对垂直位置),
indn
(按给定行数索引),以及
rin
(按给定行数反向索引)。
并非所有应用程序都会出现错误(即,那些对屏幕输出进行很少优化的应用程序将“工作”),但 ncurses 会使用这些功能。
但是,由于您有putty
可用的终端描述,这意味着您拥有完整的 ncurses 数据库。如果你设置
TERM=putty
外部screen,则 screen 将使用终端描述screen.putty
,它可以满足您的需求。