Ctrl + Right и Right отправляют одну и ту же последовательность в Putty> Экран> Vim

Я использую putty> screen> vim, а экран отправляет одну и ту же последовательность для Ctrl + Right и Right в режиме приложения для vim.

Существует возможность заставить шпатлевку отправлять последовательности курсора (отключить режим клавиш курсора приложения) в режиме приложения, и это работает, но когда экран введен, что-то не так.

Как я могу это исправить?

Если я устанавливаю term = xterm в putty, а term=putty screenrc в screenrc , он работает.

Кажется, это работает. Как я указал (позже, чем этот вопрос) в разделе Как включить комбинации клавиш управления для экрана GNU на шпатлевке? , разница, когда вы не изменяете screenrc заключается в том, что описание терминала для screen устанавливает режим приложения для терминала.

Однако приложения, работающие на экране с использованием этого обходного пути, могут отправлять escape-последовательности, которые не распознаются экраном. С помощью

 infocmp putty screen 

чтобы видеть, они включают

hpa (абсолютное горизонтальное положение),

vpa (абсолютное абсолютное положение),

indn (индекс по заданному числу строк) и

rin (обратный индекс по заданному числу строк).

Не все приложения будут плохо себя вести (т. Е. Те, которые мало оптимизируют выход экрана, будут «работать»), но ncurses будут использовать эти функции.

Однако, поскольку у вас есть описание терминала шпателя, это означает, что у вас есть полная база данных ncurses. Если вы установили

 TERM=putty 

внешний экран, тогда экран будет использовать описание терминала screen.putty , которое делает то, что вы хотите.