2017-09-25 25 views
0

我在瀏覽器中使用'xterm.js'的Web ssh終端應用程序,以及來自node.js的'ws'和'ssh2'npm模塊連接到ssh服務器。我實現了一個滑動手勢,用於發送ansi代碼esc +'[A',esc +'[B',esc +'[C'和esc +'[D',模擬上下左右的箭頭鍵,其中esc是escape(「\ 033」)的代碼。它在bash命令行上工作正常,但在Midnight Commander中,它只輸出字符'A','B','C'或'D',沒有左括號(或顯然是逃逸)。Midnight Commander識別光標鍵的代碼是什麼?

MC是否使用不同的代碼?我知道'學習鑰匙'是一種選擇,但我需要它在任何ansi終端上開箱即用。

附加信息:

服務器是Ubuntu的LTS Linux操作系統。 TERM是'xterm-color'。

黑客鍵盤箭頭鍵適用於兩者。 物理鍵盤上的箭頭鍵適用於兩者。

在'sed -n l'中鍵入方向鍵給我上面的任何鍵盤的代碼。 將手勢滑入'sed -n l'將相同的代碼顯示爲'真實'光標鍵。

使用\ x1b,\ u001b或\ 033進行轉義都會得到相同的結果。

編碼是UTF-8全線。

回答

1

好的。答案是:

ESC + 'OA',ESC + 'OB',ESC + 'OC',和ESC + 'OD'

無支架。相同的代碼,只需將其替換爲大寫的O.

要麼在bash中工作,而只有在沒有支架的O版本在MC中工作。

相關問題