web-dev-qa-db-ja.com

Cygwin bashでCtrlキーと矢印キーを同時にWordで前後に動かすにはどうすればよいですか?

デフォルトのCygwinインストールでは、CTRL-LEFTARROWまたはCTRL-RIGHTARROWを使用すると、期待どおりに一度にWordをスキップするのではなく、単に5Cまたは5Dを印刷します。

Home/Endキーは正しく機能するため、再マッピングが可能です。

103
Tom

solution が見つかりました。後世のためにここに投稿してください。

次の行を~/.inputrcC:\cygwin\home\<username>\.inputrc)に追加します。

"\e[1;5C": forward-Word   # ctrl + right
"\e[1;5D": backward-Word  # ctrl + left 

完了したら、C-x C-rを押して、現在のセッションの.inputrcファイルを再度読み取ることができます。

他の同様のカスタマイズが必要な場合の注意事項:上矢印と下矢印には5A5Bを使用し、シフトバージョンには2xを使用します。

「公式の」キーマッピングは Bashリファレンスマニュアル で説明されていますが、bashでキーマッピングをすばやく見つける方法は次のとおりです。

  1. タイプ Ctrl+V
  2. 興味のあるキーシーケンスを入力します(例: Alt+)。これは^[[1;3Cを出力します
  3. 先頭の^[を削除して\eに置き換え、\e[1;3Cを作成します
  4. この値を.inputrcファイルに配置します。
142
Tom

次の方法でファイル.inputrcをリロードできます。

bind -f ~/.inputrc

ソース

16
Kdt

サーバー上の共有アカウントで作業する場合や、使用されているカスタム構成の量を制限する場合など、カスタム環境設定なしで機能するものが必要な場合に備えて、BashにはCygwinで機能するビルトインが組み込まれています。

つまり Alt+f 前進し、 Alt+b 後退します。

http://www.gnu.org/software/bash/manual/html_node/Commands-For-Moving.html

7
Costa

Cygwinでrxvtを使用すると、このリンクでの解決策が有効であることがわかりました: control_arrow_keys_in_rxvt

次の行を~/.inputrcに追加します。

"\eOd": backward-Word
"\eOc": forward-Word
0
Peter Tran

このソリューションはmsys2コンソールでも機能します。

"\e[1;5C": forward-Word   # ctrl + right
"\e[1;5D": backward-Word  # ctrl + left 

これらのキーの組み合わせを.inputrcファイルに配置するだけです。

0
f0nzie