我希望在终端中某项工作完成或某项操作完成时收到通知,并且我读到过有关在命令提示符中添加铃声,然后打开 urgentOnBell 的内容。但我不知道如何正确地将铃声添加到我的 ZSH 提示符中。一切都只是打印 \a。[\a] 不起作用,%{\a%} 不起作用,\a 不起作用。正确的做法是什么?
答案1
不久前我遇到过这个问题,虽然它没有发出哔哔声,但我找到了一个可行的解决方案。
sudo apt-get install espeak
espeak "job complete"
答案2
如果使用OSX
,则可以使用内置Say
命令:
Say "job complete"
答案3
好的,明白了。我补充道:
%{$(echo "\a")%}
也许不是最漂亮的(一定有一种方法可以简单地正确输出转义代码)但它可以工作。
答案4
您可以将文字控制字符添加到提示行。在 中vim
,在插入模式下,Ctrl+V后跟Ctrl+G将输出铃声字符。然后它将显示为,例如,^G$_USERNAME $_PATH
但是,我发现将它添加到提示符中会导致终端在调整大小时再次响铃。将它添加到 precmd-hook 似乎是更好的解决方案,例如
precmd_bell () {
print "^G"
}
add-zsh-hook precmd precmd_bell