У меня есть приложение веб-терминала ssh, использующее «xterm.js» в браузере и модули npm «ws» и «ssh2» из node.js для подключения к серверу ssh. Я реализовал жест смахивания, который отправляет коды ansi esc+'[A', esc+'[B', esc+'[C' и esc+'[D'' для имитации клавиш со стрелками вверх, вниз, вправо и влево , где esc — код выхода ("\033"). Он отлично работает в командной строке bash, но в Midnight Commander он просто выводит символы «A», «B», «C» или «D» без левой скобки (или, по-видимому, escape).
Использует ли MC другой код? Я знаю, что «выучить ключи» - это вариант, но мне нужно, чтобы он работал из коробки на любом терминале ansi.
Дополнительная информация:
Сервер ubuntu lts linux. TERM — это «xterm-color».
Клавиши со стрелками на хакерской клавиатуре работают для обоих. Клавиши со стрелками на физической клавиатуре работают для обоих.
Ввод клавиш со стрелками в «sed -n l» дает мне приведенные выше коды с любой клавиатуры. Жесты смахивания в «sed -n l» показывают те же коды, что и «настоящие» клавиши курсора.
Использование \x1b, или \033 для экранирования дает одинаковые результаты.
Кодировка везде utf-8.