Почему клавиши Esc, Ctrl, Shift и Alt не работают в сеансе SSH с моего ПК с Windows?

Я работаю на ПК с Windows. Если я открою терминал (с putty или ssh) для Linux (CentOS) maschine, я не смогу получить клавиши Esc, Ctrl, Shift и Alt для работы. Мне они нужны для Midnight Commander (в настоящее время Ctrl-Ins и Shift-Ins не работают для меня). Можно ли получить эти ключи?

28
задан Igor Mukhin
19.05.2023 6:26 Количество просмотров материала 2530
Распечатать страницу

2 ответа

Putty эмулирует терминал, который подключен к Unix машина через последовательный (RS232c) соединения. Смотри здесь параметры конфигурации. Типичные типы терминалов включают vt100,vt200,xterm,ansi.

для правильной работы Unix переменные среды TERM должно соответствовать типу эмулируемого терминала (см. Putty конфигурация Connection/Data/Terminal-type). Я использую xterm, также для текстовых окон консоли.

использовать echo $TERM as команда для поиска текущего значения.

Esc первый символ терминальной последовательности. Таким образом, это, как правило, не должны использоваться в качестве самостоятельного персонажа. Ctrl,Shift и Alt сами по себе не вызывают каких-либо символов, который будет отправлен на ваш Unix машины. Вы можете использовать Putty меню Настройки Terminal/Keyboard влиять на то, как переводятся определенные ключи.

4
отвечен Axel Kemper 2023-05-20 14:14

хотя шпатлевка устанавливает TERM переменная xterm, его поведение фактически не соответствует поведению xterm. Есть две функции, упомянутые в вопросе:

  • Escape как префикс возвращено специальными ключами обеспечено xterm в качестве альтернативы meta ключ (см. обсуждение eightBitInput в руководстве).
  • другой ключи (управления,Shift и Alt) обычно используются как модификаторы*. То есть они обычно не отправляют символы сами по себе, а изменяют поведение нажатой клавиши.

в библиотеки часто задаваемые вопросы как использовать модификаторы сдвига или управления? представляет некоторые из фона для измененных ключей. Шпатлевка не реализует любой об этом. Это тут изменение управляющих последовательностей, передаваемых с помощью клавиши со сдвигом курсора, переключение между нормальный и приложение режимы (см. xterm FAQ почему я не могу использовать клавиши курсора (любой) оболочки? для обсуждения этих терминов).

ncurses имеет точное описание терминала для конфигурации по умолчанию шпаклевка (несколько описания могут быть созданы в соответствии с настройками диалогового окна клавиатуры, но на практике они редко упоминаются, вероятно, редко используются). Системы с полной терминальной базой данных будут иметь это putty описание терминала.

как другие терминальные эмуляторы которые устанавливают TERM to xterm, полное описание терминалов имеет много различий по сравнению с xterm. В библиотеки часто задаваемые вопросы почему бы просто не использовать термин, установленный в "в xterm"? дает обзор этого аспекта.

упоминание о ssh намекает, что вы можете использовать mintty С Cygwin. То есть потомок PuTTY, С примерно такими же ограничениями.

1
отвечен Thomas Dickey 2023-05-20 16:31

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх