web-dev-qa-db-ja.com

「CTRL +矢印/秒」のgnome-terminal ANSIエスケープシーケンスとは何ですか?

私はbashを設定しようとしています~/.inputrcこれらの設定へ
(注意: 、  左右の矢印キーを意味します)

  • Ctrl -単語に戻る必要があります
  • Ctrl -単語を前にジャンプする必要があります

現在、私はこれを~/.inputrcそしてそれは動作しません。 Ctrl + arrow 何も生成しません。

"\eC-5C":forward-Word
"\eC-5D":backward-Word

私のエスケープシーケンスが間違っていると確信しています。
正しいエスケープシーケンスは何ですか Ctrl + arrow 組み合わせ?

  • 端末:gnome-terminal内のtmux
10
the_velour_fog

Gnome-terminal(より適切に[〜#〜] vte [〜#〜])は、xtermのエスケープシーケンスのいくつかのバージョンを模倣します。これがどの程度厳密に行われるかは、VTEのバージョンによって異なります。

関連するxtermのドキュメントは XTerm Control SequencesPC-Style Function Keys セクションにあります。

あなたが探しているのは\e[1;5D(コントロールの左矢印)のような文字列です。ここで5は control 修飾子。

Ncursesでは、infocmp -xkUP5kDN5およびkLFT5の値として、kRIT5を使用してこれらの文字列を表示できます。例えば:

    kDN5=\E[1;5B,
    kLFT5=\E[1;5D,
    kRIT5=\E[1;5C,        
    kUP5=\E[1;5A,
14
Thomas Dickey

キーシーケンスのコードを見つける最も簡単な方法は、 ctrlv

だから、あなたはタイプする ctrlV そして ctrl 取得するため:

^[[1;5C

これは、ESC[1;5Cまたは\e[1;5Cを書く方法です。

16
user79743