我希望弹出一条消息以响应各种系统事件,主要是为了能够从 shell 会话中为自己设置提醒。有几种方法可以做到这一点;zenity
似乎是最精致的。但是,我发现 zenity 至少存在两个问题:
消息不会出现在所有工作区上。我尝试使用 gtk 选项
--screen
来控制它,但无论如何它们只会出现在当前工作区中。因此,如果我在消息出现时切换工作区,我将看不到它。消息不会出现在所有其他窗口之上。具体来说,如果我使用
guake
,窗口zenity
下方会出现一条新消息guake
,我将无法看到它。
不久前我尝试了其他一些应用程序。两者都gmessage
出现xmessage
问题1;gmessage
也表现出问题2。我确实发现kalarm
可以从命令行编写脚本的zenity
.
似乎可以通过设置 WM_CLASS 来解决这些问题,但我有点过头了。也可以在使用脚本启动窗口后对其进行修改,但我再次不确定在哪里寻找资源。
更新
正如@geirha 所建议的那样,我已经研究过使用notify-send
(通过包libnotify-bin,它似乎是notify-osd的客户端)。这个框架有很多问题,我为此提交了 一些 错误 报告。我希望devilspie 可以为部分或所有这些问题提供解决方法,或者还有另一个更可靠的通知系统。
也许你想要
notify-send
?否则,有devilspie,它允许您说“具有此名称(或此类或具有此角色)的所有窗口应在所有工作区上可见”之类的内容。