我在我的主目录中创建了一个自定义 .desktop 条目,
~/.local/share/applications/startMyApp.desktop
这样它就可以使用 xterm 而不是 gnome-terminal。我希望它在 dock 中的外观与我交互使用的 gnome-terminals 有所不同。
看起来startMyApp.desktop
像:
[Desktop Entry]
Type=Application
Name=MyScript
Terminal=false
Exec=xterm -e myScript.sh
Icon=myIcon.png
我已经创建了一个图标文件~/.icons/myIcon.png
图标在默认文件浏览器中显示正确。从文件浏览器打开时,它会按预期在 xterm 中执行脚本,但是,停靠栏中的图标显示为其他通用 xterm 图标。该图标来自哪里?它嵌入在二进制文件中吗?
我该如何改变这种情况?我希望 Dock 中的图标与文件中指定的图标相同.desktop
。Ubuntu 捆绑的应用程序在启动时在 Dock 中具有相同的图标(除了表示打开了多少个窗口的红点)。
答案1
您需要添加适当的StartupWMClass
入口到您的.desktop
文件。要执行此操作,请按照以下步骤操作。
- 启动相关应用程序。
- 启动单独的终端窗口并运行
xprop WM_CLASS
。 - 将光标放在打开的应用程序窗口上。光标现在应该变成十字准线。单击。您应该
WM_CLASS
在终端窗口中获得该应用程序的字符串。 在
.desktop
文件中添加以下行StartupWMClass=OBTAINED-VALUE
代替
OBTAINED-VALUE
放置您从步骤 3 中获得的值,不带任何引号。
另外我似乎需要为 xterm 实例提供一个名称。exec 行现在看起来像
xterm -name myApp -e myScript.sh