Linux端末では、Ctrl + Xショートカットキーシリーズ(たとえば、Ctrl + X Ctrl + E)はどのように処理されますか?

Linux端末では、Ctrl + Xショートカットキーシリーズ(たとえば、Ctrl + X Ctrl + E)はどのように処理されますか?

私はオンライン資料をたくさん読んだ。話すCtrl+で始まる複数の複合ショートカットX

Ctrlx Ctrle:$ EDITORプログラムで現在の行を編集するか、定義されていない場合はviを編集します。

Ctrlx Ctrlr:inputrcファイルの内容を読み込み、そこで見つかったバインディングまたは変数の割り当てをマージします。

Ctrlx Ctrlu:増分元に戻す、各行を個別に記憶します。

Ctrlx Ctrlv:現在のbashインスタンスのバージョン情報を表示します。

Ctrlx Ctrlx:カーソルを元の位置に置き換えます。 (Cx、xが十字形なので)。

Ctrlしかし、すべての可能な++の組み合わせをリストする公式ドキュメントソースが見つからず、X<something>の人を見つけるためのツールが何であるかさえ知りません。 is is bash?読む行? xterm?

Ctrlそれでは、これらの複合++XショートカットはLinux端末でどのように処理されますか?<something>

答え1

Linux端末で直接処理された文字を一覧表示できますstty -a。他のすべては実行中のアプリケーションによって処理され、キーシーケンスのリストはそのアプリケーションのドキュメントになければなりません。

ここに関連する最も可能性の高いアプリケーションはシェルです。ほとんどの最新のシェル(bash、zshなどを含む)はreadlineライブラリを使用するか、独自の行編集を実装します。 readlineライブラリとreadlineなしでこれを行うほとんどのシェルはemacsエディタからキーシーケンスを派生します(viバインディングも利用可能です)。特に、ctrl-x次のように始まるemacsのキーシーケンス、C-x特にシンボル(ctrl-xの場合)はEmacsドキュメントです。 (明確に言えば、emacsはユーザーがemacsを実行しない限りこれを行いません。アプリケーションは独自の目的で機能をコピーするだけです。)

答え2

Ctrl++Xなどを処理する<something>のは "readline" ライブラリであり、これを扱うドキュメントは以下で見つけることができます。GNUヘビーヒーター

Ctrl+ Ctrlキーの名前はコンピュータによって異なる可能性があるため、<something>ショートカットの説明は少し難しいです。C-<something>

また/etc/inputrc、mayも参照してください/etc/inputrc.keys

関連情報