Linuxでシェルにテキストを貼り付けるときにバックスペースを許可するのはなぜですか?

Linuxでシェルにテキストを貼り付けるときにバックスペースを許可するのはなぜですか?

私が出会った多くのLinuxディストリビューションでは、シェルに貼り付けたテキストにはバックスペース文字が含まれています。これらの文字を貼り付けることが妨げられないのはなぜですか?それとも、この機能はいくつかの便利な機能を提供しますか?

つまり、Linuxシェルは貼り付けられた文字列なのか、手書きの文字列なのかを「認識」しますか?

このアクションを処理する方法は?

答え1

シェルは端末で実行されるアプリケーションです。ペーストの場合のみエミュレータ関連していますが、まだ「実際の」端末があります(ヒント:Linuxコンソールはいいえの一つ)。

さまざまなコンソール実装を無視すると、テキストの貼り付けがより制限された方法で実行されるため、Xで実行される端末は質問の焦点です。端末エミュレータは一連のイベント。入力したキーや貼り付けたテキストは、端末エミュレータで同じように見えます。

端末エミュレータ(およびその間の選択/貼り付け)だけを考えると、選択/貼り付けが端末ウィンドウに表示される内容を処理できるため、バックスペースは問題になりません。つまり、ユーザーが端末ウィンドウでテキストを選択すると、印刷可能なテキストのみを選択できます(特別な場合はタブ文字を含めることができます)。バックスペース文字はありません(誰かの端末実装にバグがある場合を除く)。バックスペースは端末にカーソルを移動するように指示するからです。。いいえ印刷可能端末でオプションを提供するには、左側のままにしてください。持つ利用可能な他の何百ものターミナルコントロールただし、バックスペースキーはシンプルで汎用性があります。

バックスペースキーは、ブラウザ(実際に印刷可能なテキスト表示を提供する必要がある)など、正しく実装されていないアプリケーションで発生する問題であり、スクリプト作成者が決定した内容を画面の内容に保存しているようです。

だから...尋ねる代わりに端末エミュレータがまだBSを許可する理由、GUIブラウザがなぜこれらの動作を許可するのかを尋ねる人がいるかもしれません。

関連情報