如何仅在 bash tab-complete 中关闭蜂鸣声

如何仅在 bash tab-complete 中关闭蜂鸣声

我发现蜂鸣声对某些事情很有用,所以我仅有的想要关闭它以完成制表符(我不是问如何完全关闭它,而是已经得到答复在 Serverfault 的另一个问题中)。我也没有 root 访问权限,在 RHEL5 上工作。

答案1

Readline 库有bell-style变量:

控制 Readline 想要按响终端铃声时发生的情况。如果设置为“无”,Readline 永远不会响铃。如果设置为“可见”,Readline 将使用可见铃(如果可用)。如果设置为“可听”(默认值),Readline 会尝试敲响终端的铃声。

~/.inputrc因此,您可以将以下行放入文件中:

 set bell-style none

接下来,运行bind -f ~/.inputrc一次来​​加载它。

答案2

如果您不想创建和维护单独的~/.inputrc文件,您也可以将此行添加到~/.bashrc

bind 'set bell-style none'

然后source ~/.bashrc重新加载它。

答案3

我不知道有什么方法可以禁用选项卡完成铃声bash(除了完全禁用铃声或将其更改为主观上更烦人的视觉铃声)。

你可以尝试- 这使得 shell 在你点击时立即显示匹配命令/项目的列表,set show-all-if-ambiguous on而不是等待你点击两次。 副作用是在显示候选匹配项之前没有铃声。~/.inputrctabtab

答案4

在~/.inputrc中,存在以下可能性,但它对我没有任何作用。它只是敲响了铃声。这可能是 Cygwin bash 中的一个错误。

set bell-style visible

相关内容