PuTTY Telnet経由でAIX kshからキーを削除する

PuTTY Telnet経由でAIX kshからキーを削除する

私が働いているところでは、kshを使ってAIXで開発していますが、telnetほとんどの人はArcTelを使用していますが、私はPuTTYを好みます。 PuTTYの唯一の問題は、キーストロークがDel機能せず、[3~印刷のみであることです。興味深いことに、ArcTelでははい通常の操作。

ArcTelの設定を見てみると、「バックスペースと削除」というスイッチが1つしかないことがわかりました。 「一般」または「VNSスタイル」のいずれかです。正常に開きました(Delは期待どおりに機能します)。 PuTTYでキーボード設定を調整してみましたが、Del好きなように組み合わせが見つかりませんでした。

PuTTYでこの機能を実装する方法はありますか?[3~私の役割を再マップしますか.profile?しかし、KSHでViモードを切り替えたくありません。

答え1

パテを使用して問題なくAIXに接続します。私の.profileに

stty erase ^?

私のパテ設定のコントロールでターミナルキーボード「バックスペース」が選択されていますか? (127)

答え2

AIXのkshがカスタムキーバインディングをサポートしているかどうかはわかりません。 AIXのマニュアルで文書化されているものが見つかりませんが、私の考えでは標準ksh機能\e[3~\eエスケープ文字はどこにあります)のバインディングを設定してみてください。有効な場合は、他のキーの組み合わせに対するバインディングも設定できます。

KEYBD_handler () {
  case ${.sh.edchar} in
    $'\e[3~') .sh.edchar=$'\004';;
  esac
}
trap KEYBD_handler KEYBD

$'\004'つまり、はCtrl+D標準です。バンドル次の文字を削除します。 )

この問題は、端末定義を変更することで解決できます。用語情報。 AIXでこれを行う方法がわかりません。

関連するメモでは、PuTTY を次のように構成する必要があります。正しい文字を送ってくださいBackspace、またはAIXシステムで必要に応じて実行するか、stty erase '^?'terminfo定義を一致するように変更します。stty erase '^h'

関連情報