如何在 .desktop 文件中为终端命令定义 wm 类

如何在 .desktop 文件中为终端命令定义 wm 类

我正在研究 .desktop 文件,最后得到了这个:

[Desktop Entry]
Version=1.0
Name=Music Player (cmus)
Comment=Command Line Music Player
GenericName=Music Player
Exec=cmus
Terminal=true
X-MultipleArgs=false
Type=Application
StartupNotify=false

到目前为止一切正常。

现在我也在使用 i3wm 并想将应用程序分配到特定的工作区。这是我当前的配置:

assign [class="^cmus.*$"] 5:

答案1

您无法WM_CLASS通过.desktop文件进行设置,因为由应用程序设置自己的WM_CLASS.

但许多应用程序仍然允许使用其工具包(GTK/Qt)的标准方法来更改其类,因此大多数应用程序都会尊重--class命令行选项。

答案2

我现在使用以下解决方法,我认为这不是真正的解决方案。

由于我使用的是 gnome-terminal,因此可以设置 wm_class:

[Desktop Entry]
Exec=gnome-terminal --class=cmus -e cmus
Terminal=false

使用包装器不起作用x 终端模拟器因为它链接到不支持该类的包装器。

相关内容