如何在与消息菜单集成的 Python 脚本中使用我自己的图标?

如何在与消息菜单集成的 Python 脚本中使用我自己的图标?

我正在尝试自定义一个我非常喜欢的旧 Python 脚本,特别是 gmail-notifier。它使用消息菜单中的默认邮件图标,而不是许多类似程序使用的 gmail 图标。我想知道如何使用我自己的图标。我一直在查看代码,对于菜单中的小图标该如何更改,我没有什么特别的想法,我只能更改弹出通知图标。我尝试更改快捷方式的图标,但这只会在消息菜单中显示一个错误图标。

无论如何,我很困惑...有什么建议吗?

答案1

我自己构建了一个小型 gmail 通知应用程序。python 脚本中应该有一段代码:

server = indicate.indicate_server_ref_default()
server.set_desktop_file("/usr/share/applications/gmail_notifier.desktop")

上面指定的 .desktop 文件用于确定消息菜单中要使用的图标。我的 .desktop 文件中相应的“Icon”键如下所示:

Icon=mail-unread

“图标”键的描述,如桌面入门规格, 是:

在文件管理器、菜单等中显示的图标。如果名称是绝对路径,则将使用给定的文件。如果名称不是绝对路径,则使用图标主题规范将用于定位图标。

就我而言,上述描述的第二部分适用(即图标主题规范用于定位与“mail-unread”对应的图标。您也可以提供图标的绝对路径,例如:

Icon=/usr/share/icons/...

或者您可以尝试以下操作(仅当您的图标主题具有图标时它才会起作用,这种情况很少见。这就是我使用通用图标“mail-unread”的原因。):

Icon=gmail

我现在不在电脑前,但当我打开电脑时,我会告诉你在哪里可以找到你想要的图标以及它的名字。我还有一些(极少数的)优秀资源的链接,这些资源描述了如何将应用程序与消息菜单集成,但我还是需要在我的电脑前才能做到这一点。

如果你对我的应用程序的完整代码感兴趣,我可以给你在 GitHub 上

答案2

这个问题没有简单明了的答案。我看了gmail-notifier 的源代码。无法使用某些配置文件设置自己的图标。因此,您要么必须更改源代码,重新编译并重新安装,要么更改现有的图标文件。如果您选择第二种方法,您会在 中找到图标/usr/share/pixmaps/gnome-gmail-notifier.svg。当您用其他 SVG 替换此文件时,图标将会更改。

相关内容