¿Es posible configurar bash para autocompletar con una pestaña como zsh?


13

Como la mayoría de las personas aquí sabe, cuando usa bash en el símbolo del sistema si escribe parcialmente un nombre de archivo, un comando o una opción para un comando, etc., bash completará la palabra si hay exactamente una coincidencia.
Cuando hay más de una coincidencia, debes presionar <Tab>dos veces y bash generará una lista de posibles coincidencias.
Me gustaría configurar bash para simplemente proporcionar esas opciones en el primero <Tab>.
¿Es esto posible sin escribir un guión? es decir, una opción de shell?

man bash tiene una sección "finalización programable" pero no pude distinguir si hay una opción para habilitar la "finalización de una sola pestaña".


Respuestas:


17

Pon esto en tu ~/.inputrc:

set show-all-if-ambiguous on

Para crédito adicional, agregue:

set completion-ignore-case on

Todas las opciones están en el manual de GNU ...


3
Atención: poner esto en tu ~/.bash_profileno funcionará. Tiene que ir en tu~/.inputrc
yndolok

55
No es broma ... Por eso especifiqué colocarlo allí.
jasonwryan

6

No tengo suficiente reputación para comentar, pero agregaría a las respuestas de jasonwryans a las que se puede agregar .bash_profileo .bashrcescribiéndolas como:

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

En caso de que alguien más encuentre esta pregunta como yo.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.