Можно ли настроить bash на автодополнение с одной вкладкой, как в zsh?

Можно ли настроить bash на автодополнение с одной вкладкой, как в zsh?

Как известно большинству людей здесь, при использовании bash в командной строке, если вы частично вводите имя файла, команду или опцию команды и т. д., bash завершит слово, если есть ровно одно совпадение.
Если совпадений больше одного, нужно нажать <Tab>дважды, и bash сгенерирует список возможных совпадений.
Я хотел бы настроить bash так, чтобы он просто предоставлял эти опции в первом <Tab>.
Возможно ли это без написания скрипта? т. е. опции оболочки?

man bashесть раздел «программируемое завершение», но я не смог понять, есть ли там опция включения «завершения одной вкладкой».

решение1

Вставьте это в свой ~/.inputrc:

set show-all-if-ambiguous on

Для получения дополнительного кредита добавьте:

set completion-ignore-case on

Все варианты есть вРуководство GNU...

решение2

У меня недостаточно репутации, чтобы комментировать, но я бы добавил к ответам jasonwryans, что его можно добавить .bash_profileили .bashrcнаписав их так:

bind 'set show-all-if-ambiguous on'
bind 'set completion-ignore-case on'

Я думаю, кто-то еще задастся этим вопросом так же, как и я.

Связанный контент