長い質問:多くのリクエストをTelnetで処理し、サーバーがどのように反応するかを確認することで、簡単なHTTPサーバーをテストしようとしています。しかし、タイプミスをして、Backspaceキーを押して前の文字を消去すると、MobaXtermは文字列から文字を削除する代わりに^H
を送信します。 Shift + Backspaceを押すと、すべてが思い通りに機能しますが、しばらくするとこれは非常に煩わしくなります...では、Backspaceの機能を変更するだけの解決策はありますか?
短い質問:^H
を送信する代わりに、バックスペースで文字を削除することはできますか?
MobaXtermは、トグルすることを試みることができるチェックボックス設定「Backspaceが^ Hを送信する」を提案します(MobaXtermグローバル設定->「ターミナル」タブで)。
保存されたセッションを使用している場合は、このセッションを編集し、[ターミナル設定]タブに移動して、[Backspaceが^ Hを送信する]チェックボックスをオンにする必要があります。
「バックスペース」というラベルの付いたキーは、競合の問題です。技術的には、それは[oughtを送信することです^H
は、単にASCII制御文字の名前であるためです。他のものは異なります。この機能の履歴(削除キーが機能しないのはなぜですか?を参照)。
あなたがtypingであると言う議論では、通常の意味合い(明確化を欠く)は、ターミナルを起動してから、ターミナル内でプログラムを実行することです。その場合、対応する端末の初期化があります。たとえば、シェルとstty
などのプログラムを使用します。これはローカルマシン(入力している場所)で実行されます。 MobaXterm 提供stty
バージョン3.2(2011-05-30)以降。
その場合、MobaXtermが^H
を送信する場合、端末の初期化で次を使用する必要があります
stty erase \^H
たとえば コマンドstty erase ^H
は何をしますか? を参照してください。
一方、あなたはcouldを使用して(質問では明らかではありません)、アプリケーションと端末の一貫性を保つためにstty
を使用できないように端末が起動される状況を構築しました。または、Backspaceキーの動作を変更する理由が他にもある可能性があります。 PuTTY(xtermのような)はこれのために2つのメカニズムを提供します:
^H
)と削除(DEL = 127、^?
と表示されることが多い)の間で切り替える修飾子。xtermは、PuTTYにないように見える3番目のメカニズムを提供します(XTerm制御シーケンスを参照):
CSI ? Pm h
DEC Private Mode Set (DECSET).
Ps = 6 7 -> Backarrow key sends backspace (DECBKM).
PuTTYがそれを実装した場合、アプリケーションは端末の動作を直接設定できます。むしろ、初期化中に、PuTTYはその構成の初期状態をチェックし、(プラットフォームによっては)デバイスに設定されている端末モードも(xtermのように)チェックし、バックスペースと削除の動作を選択します。