我希望每次收到 /query 消息或在频道中突出显示时收到通知。此通知应采用气泡 OSD(屏幕显示)的形式。
如果 Linux 无法实现 OSD,我将满足于将包含irssi
实例的终端窗口置于窗口堆栈的顶部,并在状态栏中闪烁窗口的名称。
答案1
这很容易使用以下命令进行设置fnotify脚本。将其设置为自动加载然后自定义它以打印到您选择的文件:
sub filewrite {
my ($text) = @_;
# FIXME: there is probably a better way to get the irssi-dir...
open(FILE,">>$ENV{HOME}/path/to/your/fnotified");
print FILE $text . "\n";
close (FILE);
}
然后,使用inotifywait
监视该目录或文件,并在写入新行时触发消息:
#!/usr/bin/env bash
# script to push IRC highlight notifications
dir="$HOME/path/to/your/"
while inotifywait -qqre attrib "$dir" >/dev/null 2>&1; do
echo "IRC:" "You have been pinged..." | notify-send IRC "You have been pinged…" \
-i /usr/share/icons/gnome/48x48/status/dialog-warning.png
done
我irssi
在无头服务器上运行,因此我将监视的目录同步到我使用的所有其他计算机Pulse(以前称为 Syncthing),然后inotify
在这些本地计算机上运行该脚本,这样,无论我在何处登录,如果我被 ping 到,我都会收到通知...
如果您使用或希望在登录时启动它,则可以inotify
从服务文件运行该脚本。systemd
如果你不想使用notify-send
,禅宗是不引人注目的通知应用程序的绝佳选择。