
私はここに立ち往生しています:
<enter>, <backspace>, <up>, <down>, <left>, <right>
これらのいずれかをコントロールにバインドできますか?
\C<foo>
|foo>
ヘルプとして表示され、制限され^<up>
ません。
'\C<foo>
も'\C <foo>'
動作しません(と同じ"
)。
<control>
存在しない。
あなたは実際にできる^<foo>
ヘルプに表示するには、マッピングした場合にのみ表示されます^<foo>
。これはまさに私が望むものではありません。 ;)
答え1
ここで正解を見つけました。mail-archive.comでctrl + upバインディング。
mutt 内で次のコマンドを使用します。
:exec what-key
その後、目的のキー(たとえば、Ctrl+ arrow)を押すと、キーを参照する方法を学ぶことができます。私の場合は+を<C-Up>
得ました。CtrlUp
Ctrl-g
終了するにはどのキーを押す必要がありますか?
答え2
まず、端末がこれらのキーの組み合わせに対して異なるエスケープシーケンスを送信していることを確認する必要があります。端末で実行されるアプリケーションは、キーストロークではなく文字を入力として受け取ります。ファンクションキーは、制御文字またはエスケープ文字で始まるエスケープシーケンス(\e
キーバインディングで作成できます)としてエンコードされます。
端末からキーの組み合わせに送信されたエスケープシーケンスを表示するには、シェルプロンプトでCtrl+を押してから、キーのV組み合わせをクリックします。たとえば、シェルプロンプトでCtrl++を押すとV Ctrl、.がエスケープ文字であることがわかるため、+に反応するようにMuttにバインドする必要があります。Left^[O5D
^[
\eO5D
CtrlLeft
bind editor \eO5D backward-word
一部の端末は、異なる修飾子を使用して同じキーに対して同じエスケープシーケンスを送信します。この場合、端末の動作を変更したり、他の端末に切り替える方法を理解する必要があります。