Bashシェルは、すべての可能性が次の行にリストされている「従来の」オートコンプリートとは異なるタイプのオートコンプリートをサポートしていることがわかりました。
「従来の」オートコンプリートでは、入力ch
してからキーを押すと、次のTab
ようになります。
$ ch
chacl chgrp chmod chown chvt
しかし、次の行を自分に追加すると/etc/inputrc
(Tabキーが組み込みmenu-complete
関数に再マップされます):
Tab: menu-complete
次に、シェルの動作が変更されます。補完される単語は、可能な補完のリストからの単一の一致に「インライン」で置き換えられ、Tabキーをもう一度押すと、単語は次の一致に置き換えられます。
これは便利だと思いましたが、それでも従来のオートコンプリートを維持し、キーの組み合わせにバインドしたいと思いましたCtrl + Tab
。そこで、ライブラリのドキュメントが示唆/etc/inputrc
しているように、ファイルに次の行を追加しました。readline
Ctrl-Tab: complete
ただし、この行を追加すると、両方が作成されTab
、Ctrl-Tab
従来のcomplete
関数が呼び出されるように見えます。
誰かが私が間違っていることを知っていますか?
前もって感謝します!