今日は順調です。別の質問です。
これらをに入れる.inputrc
と、どちらも同じように動作しますか?
TAB: menu-complete
Shift-TAB: menu-complete-reverse
つまり、どちらも最後の1つが言うことを何でもします。
今日は順調です。別の質問です。
これらをに入れる.inputrc
と、どちらも同じように動作しますか?
TAB: menu-complete
Shift-TAB: menu-complete-reverse
つまり、どちらも最後の1つが言うことを何でもします。
回答:
Readlineはと呼ばれる修飾子について何も知らずShift
、未知の修飾子名を静かに無視します。お試しくださいwibble-TAB
。
アクションをShift+にバインドするにはTab、端末が送信するエスケープシーケンスを見つける必要があります。bashで、実行cat
してCtrl+を入力しV、次にShift+を入力しTabます。これにより、文字通りエスケープシーケンスが挿入されます。最初の文字は、次のようにエスケープ文字になる可能性があり^[
ます。端末によってエスケープシーケンスは異なりますが、一般的な可能性は␛[Z
(エスケープ、左角括弧、大文字のZ)と␛␉
(エスケープ、タブ)です。キーを適切にバインドします~/.inputrc
(ここ\e
で、エスケープ文字を意味します)。
"\e\t": menu-complete-backward
"\e[Z": menu-complete-backward
cat
はbashバインディングを回避します。通常bashは、次の文字を文字どおりに挿入するために同じCtrl + Vバインディングを持っているため、違いはありません。
$ cat <Enter> <Shift+Tab>
どのディスプレイ^[[Z
私はいつも追加でください\e
先に私から取得シーケンスのCtrl+V
?これは次のように変換されますか?"\e^[[Z": shell-expand-command
^[
`\ e`で置換
^[Z
私のために働いた(BASH); 詳細な回答をありがとう!:)