BASHのタブ補完を最初の一致で埋めますか?


11

Windowsコマンドプロンプトのように、Tabキーを押したときに最初の一致をBASHに入力させる方法はありますか?

(それでも一致のリストは表示されますが、Tabキーを押し続けると、それらを循環するはずです。)

つまり、ここでの目標は埋めることができるようにすることですどんな試合唯一のWindowsのように-十分なプレス与えられ、TABキーを押します。

回答:


15

以下を.inputrcファイルに追加します(正確な場所はシステムによって異なります)。

"\C-i": menu-complete

これにより、TABがmenu-completeにマップされ、最初の一致がオートコンプリートされます。

次に、追加(またはコメント解除)しますshow-all-if-ambiguous。これにより、最初のTABプレスで可能な補完のリストが表示されます。

または、次のようにして、セッションごとに(編集せずに.inputrc)menu-completeを設定できます。

bind '"\C-i" menu-complete'

いいえ、それは間違いなく Windowsコマンドプロンプトのようなものではありません。:-)
user541686 '19 / 07/19

@Mehrdad:編集、私は今それを得たと思います。
Philomath

ほぼ+1!それは私が何をしたいのですが、それはそれを行うようにする任意の方法がある、それは曖昧だ場合は、メニューを表示しますか?(それはあまりにも多くを求めているかもしれませんが、私はそれが可能であることを望んでいます。)
user541686

@Mehrdad:それがあなたが望むものであれば、それを受け入れてください。これは人々が正しい答えを素早く得るのに役立ちます。一度に両方を実行するという新しい要求については、それは可能ではないと思いますが、誰が知っているのでしょうか?しかしmenu-complete"\M-s"forのような別のキーシーケンスにバインドできるので、自由にMeta+S選択できます。
フィロマス

1
あのね?それは実際に私が望むことを正確に実行しているようです:最初にメニューを表示し、次にオプションを循環します!私が試した最初のコンピュータでこれを見たとは思わない(多分私は注意を払っていなかった)が、それは完全に機能しているようだ!:)(編集:この設定 show-all-if-ambiguous
有効に

4

この機能をbashで動作させる方法については知りませんが、zshにはデフォルトで必要なものが正確に設定されています。oh-my-zshzshをチェックしてください。

zshはbashのほとんどの機能を備えており、タブのみで移動して入力する機能など、すぐに使える機能がいくつか追加されています。

ほとんどのLinuxディストリビューションには、zshをインストールするためのパッケージが付属しています。


1
...ああ私のzsh !! それは面白いです、私はそれを見てみましょう...それは私が必要とすることをするかもしれないししないかもしれません。
user541686 '19 / 07/19

お役に立てて嬉しいです。どのディストリビューションを使用していますか?zshとoh my zshのインストール方法に関するガイドで、より詳細な回答を提供できます。
クリスナドラー

+1 zshをインストールしました。とても素晴らしいようです。問題が発生しなければ、これも受け入れるかもしれません。ありがとうございます。:)(私はUbuntu btwを使用しています。)
user541686

素晴らしい、apt-get install zshを実行してからここでoh-my-zshの自動インストーラーを実行した場合は、問題ありません。設定にサポートが必要な場合はお知らせください。
クリスナドラー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.