Чи можна налаштувати bash для автозаповнення однією вкладкою, наприклад zsh?


13

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

man bash має розділ "програмоване завершення", але я не зміг розібратися, чи є можливість включити "заповнення однієї вкладки".


І ... протилежне запитання: Чи можна налаштувати zsh, щоб не заповнити одну вкладку, як bash (про що я хотів :)
Josh

Відповіді:


17

Помістіть це у своєму ~/.inputrc:

set show-all-if-ambiguous on

Для отримання додаткового кредиту додайте:

set completion-ignore-case on

Усі параметри містяться в посібнику GNU ...


3
Голова вгору: вкладати це у ваше ~/.bash_profileне вийде. Це має пройти у вас~/.inputrc
yndolok

5
Не жартую ... Ось чому я вказав розміщення його там.
jasonwryan

6

У мене недостатньо репутації, щоб коментувати, але я б додав до язонврійців відповіді, що це можна додати .bash_profileабо .bashrcзаписати їх як:

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

Я вважаю, що хтось інший знаходить це питання, як і я.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.