我有一个在浏览器中使用“xterm.js”的网络 ssh 终端应用程序,以及来自 node.js 的“ws”和“ssh2”npm 模块以连接到 ssh 服务器。我已经实现了发送 ansi 代码 esc+'[A'、esc+'[B'、esc+'[C' 和 esc+'[D' 的滑动手势,以模拟向上、向下、向右和向左的箭头键, 其中 esc 是转义代码 ("\033")。它在 bash 命令行上运行良好,但在 Midnight Commander 中它只输出字符“A”、“B”、“C”或“D”,没有左括号(或者显然是转义符)。
MC 是否使用不同的代码?我知道“学习密钥”是一个选项,但我需要它在任何 ansi 终端上开箱即用。
附加信息:
服务器是ubuntu lts linux。术语是'xterm-color'。
黑客键盘箭头键适用于两者。物理键盘上的箭头键适用于两者。
在 'sed -n l' 中输入箭头键可以从任何键盘获得上述代码。将手势滑入“sed -n l”会显示与“真实”光标键相同的代码。
使用 \x1b、\u001b 或 \033 进行转义都会得到相同的结果。
编码全面采用 utf-8。