暗黙的に設定されたreadline設定では、タブによってキーバインディングが実行されます。出力するとき
bind -q complete
その代価としてこれを受けました。
complete can be invoked via "\C-i", "\e\e".
よろしくお願いします:-)
興味深いことに、私が入力している間
bind -u complete
タブが動作を停止しました
答え1
テキスト端末は、キーではなく文字のみを認識できます。したがって、Tabなどの特殊キーは文字でエンコードする必要があります。これBackspaceEnterASCIIコードすべての最新の文字セットの基礎となる文字セットは次のとおりです。制御文字。キャラクターの一つは商標。文字番号9とI
文字番号9なので、Ctrl+を押すのはテキスト端末で押すのとI同じです。Tab
シェルでは、次の操作を実行して、キー押下によって送信された文字または文字シーケンスを表示できます。
echo -n '
プロンプトに従って入力を開始します。- Ctrl+を押すと、V次の文字を編集コマンドとして処理するのではなく、実際に次の文字を入力しようとしていることをシェルに通知します。
- 情報を希望するキー(またはShift+などのキーの組み合わせ)を押します。Tab
- を入力し
' | hexdump -C
てタップしますReturn。
キーから送信された16進バイトの出力が表示されます。バイト00〜1fは制御文字です(、、、、、、^@
;は+を押して取得した制御文字の一般的な表現です^A
)。^Z
^[
^\
^]
^^
^_
^x
Ctrlx