答案1
回答
如果你想要在某处看到完整的消息,GNOME 扩展“备案通知”允许您将通知存储到选择的文件中。
专业级
如果您希望在屏幕截图的通知列表中看到完整消息,您可能需要更改 GNOME 中该特定部分的 CSS。有一些教程可以帮助您做到这一点,但我不建议您这样做,除非您知道自己在做什么。您可以查看以下文档Gnome Shell 维基页面。
您可以在 gnome-shell 主题文件中找到与这些通知相关的所有 CSS gnome-shell.css
,该文件位于:
/usr/share/gnome-shell/theme/gnome-shell.css
与这些特定通知相关的 CSS 位于 CSS 类下.message-list
。
答案2
有各种附加组件可能会有帮助。
这将阻止应用程序删除自己的: https://extensions.gnome.org/extension/1335/grown-up-notifications/
这使得它们保持可见直到被点击: https://extensions.gnome.org/extension/41/permanent-notifications/
这显示一个计数器: https://extensions.gnome.org/extension/1386/notification-counter/
等等。你可能需要尝试一些组合,看看是否有帮助...
答案3
查看所有通知、完整通知消息的万无一失的方法
(该方法提供对所有完整通知消息的访问。可以对它们进行更细粒度的处理)。
“基本”命令dbus-monitor "interface='org.freedesktop.Notifications'"
将显示每个通知的信息。例如,如果我在终端 #1 中执行该命令,并在终端 #2 中执行notify-send -u normal 'testing'
,则我会在终端 #1 中得到
method call time=1650533140.066199 sender=:1.357 -> destination=:1.69 serial=6 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=GetServerInformation
method call time=1650533140.067533 sender=:1.69 -> destination=:1.49 serial=305 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=GetServerInformation
method call time=1650533140.122757 sender=:1.357 -> destination=:1.69 serial=7 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
string "notify-send"
uint32 0
string ""
string "testing"
string ""
array [
]
array [
dict entry(
string "urgency"
variant byte 1
)
]
int32 -1
method call time=1650533140.131442 sender=:1.69 -> destination=:1.49 serial=310 path=/org/freedesktop/Notifications; interface=org.freedesktop.Notifications; member=Notify
string "notify-send"
uint32 0
string ""
string "testing"
string ""
array [
]
array [
dict entry(
string "urgency"
variant byte 1
)
dict entry(
string "sender-pid"
variant uint32 87009
)
]
int32 -1
从现在起,您可以按照自己的意愿处理这些信息。例如,您可以:
- 将该信息发送到日志文件(肯定需要)。注意:这足以查看完整消息,如 OP 中所要求的
grep
//awk
等sed
输出- 将您的命令放在您的
.bashrc
、.profile
等中。 - 对时间戳进行后处理。
- 自动维护日志文件(清理旧通知等)
我不知道是否已有可用的起点。我发现以下几点:
- 如何读取 dbus-monitor 输出?. 处理通知的一般信息和 Python 代码。还有链接指示通知(最近通知)。
- 解析 dbus 监视器输出消息
- https://github.com/tstack/lnav/issues/505
答案4
您尝试过 Notify OSD 应用程序吗?如果您想配置通知,它非常有用。您可以在此处阅读更多相关信息: https://wiki.ubuntu.com/NotifyOSD
以下是从终端安装的步骤:
sudo apt install notify-osd
pkill notify-osd
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install notifyosdconfig