シスコのシリアルタームサーバーに接続されているデバイスがあります。telnet
シスコのポートに直接アクセスすると、多くが正常に動作します。ただし、Backspaceデフォルトではtelnetにマッピングされているため、使用しない頑固なデバイスがいくつかあります。
問題がある場合はrxvt
、Debian squeeze(Xウィンドウ)からtelnetで接続します。 TERM
設定されているrxvt
が、それは私が使用するかどうかは関係ありませんvt100
、vt101
またはxterm
変更することは... TERM
何の効果もありません。私TERM
は古いカーミットFAQで見たものに基づいて変更の道を歩み始めました。FWIW、stty erase ^h
そしてstty erase ^?
どちらも動作しません。
... Backspaceからのraw TCPソケットを使用すると、これらのデバイスで正しく動作することに気付きました。ただし、その場合、非表示ではないパスワードやターミナルページングに関する他の問題が発生します。netcat
nc 192.168.12.117 2006
これらのデバイスに対してtelnetおよびsshを選択的に強制的にマップBackspaceするにCtrlHはどうすればよいですか?また、これがデバイスのバグかどうかを評価するには、どの基準を使用すればよいですか?
編集
重要な場合、これはshowkey -a
問題のキーのからの出力です...に^?
対応しBackspace、^H
ですCtrlH。LinuxのキーボードとコンソールのHowtoを見ると、もう少し近づいているように見えますが、これを変更するために何ができるかを理解することができません。いろいろな呪文を試しloadkeys
ても効果はありません。
[mpenning@hotcoffee docs]$ sudo showkey -a
Press any keys - Ctrl-D will terminate this program
^? 127 0177 0x7f
^H 8 0010 0x08
私はまた、関連する出力も含めdumpkeys
ています...これは私のシステムの現在のマッピングです(問題の一部のデバイスでは動作しません)。Backspaceと同じことをする方法を見つけることができればCtrlH、解決策があります。
[mpenning@hotcoffee docs]$ sudo dumpkeys | grep -Ei "backspace|127"
keycode 8 = BackSpace ampersand braceleft
keycode 14 = BackSpace Delete
control keycode 14 = BackSpace
keycode 127 =
[mpenning@hotcoffee docs]$
ssty erase '^?'
か?デバイスがをC-h
要求する場合、それはtelnetの呼び出しではなく、端末(エミュレーター)の呼び出しです。