Como desligar o sinal sonoro apenas no bash tab-complete

41

Eu acho o bipe útil para algumas coisas, então eu quero desligá-lo para concluir a guia (não estou perguntando como desligá-lo completamente, que já foi respondido em uma pergunta diferente no Serverfault). Também não tenho acesso root, trabalhando no RHEL5.

Shep
fonte
1
existe uma opção para isso no zsh, mas não é possível no bash, eu acho.

Respostas:

60

A biblioteca Readline possui bell-stylevariável:

Controla o que acontece quando a Readline deseja tocar a campainha do terminal. Se definido como 'none', o Readline nunca tocará a campainha. Se definido como 'visível', o Readline usará uma campainha visível, se houver uma disponível. Se definido como 'audible' (o padrão), o Readline tenta tocar a campainha do terminal.

Então você pode colocar no seu ~/.inputrcarquivo a seguinte linha:

 set bell-style none
Nykakin
fonte
4
Se você deseja que esta configuração seja padrão para todos os usuários do sistema, você pode editar o arquivo de configuração / etc / inputrc com o usuário root.
Pode Kavaklıoğlu 12/08/2015
você salvou minha vida hoje
Asalle
12

Não conheço nenhuma maneira de desativar a campainha de conclusão da guia bash(além de desativá-la completamente ou alterá-la para a campainha visual subjetivamente mais irritante).

Você pode tentar o set show-all-if-ambiguous onseu ~/.inputrc- isso faz com que o shell mostre a lista de comandos / itens correspondentes imediatamente quando você pressiona, em tabvez de esperar que você pressione tabduas vezes.
Um efeito colateral é que não há sinal antes que as correspondências do candidato sejam mostradas.

voretaq7
fonte
5

Em ~ / .inputrc, existe a seguinte possibilidade, mas não fez nada por mim. Apenas toca a campainha. Isso pode ser um bug no Cygwin bash.

set bell-style visible
Mark Lakata
fonte