我已将 byobu 图标锁定在 Unity 菜单中。单击它时,我希望会出现一个显示此图标的窗口。
但这种情况并没有发生。实际发生的是,当我第一次单击它时,它会打开一个终端窗口,菜单中有它自己的新图标(所以现在我有一个看起来没有启动的 byobu 图标和一个不需要的终端图标)。如果我第二次单击 byobu 图标,它会打开一个新的终端窗口。
自从我买了一台新笔记本电脑(ubuntu 15.10)后,我就遇到了这个问题。在我的旧笔记本电脑上,它可以正常工作(ubuntu 14.04 LTS)。
我怎样才能解决这个问题?
编辑:来自评论:
/usr/share/applications/byobu.desktop 中的 Exec 行:
Exec=env TERM=xterm-256color byobu
答案1
这是一个已知错误在 Unity 使用的窗口匹配框架 BAMF 中。我认为他们仍在开发 SRU(稳定版本更新)——我似乎在 15.10 上安装了 byobu 5.97-0ubuntu1
,修复程序在 15.105.98-0ubuntu1
或更高版本中。
如果你不介意 Unity 关联,评论 #2 中有一个解决方法全部带有 Byobu 图标的 gnome-terminal 窗口。
答案2
对于那些在 ubuntu19.10 中使用 unity 仍然遇到此问题的人。这是我现在正在使用的桌面文件,它可以正常工作:
[Desktop Entry]
Name=Byobu Terminal
Comment=Advanced Command Line and Text Window Manager
Icon=byobu
Exec=gnome-terminal --class=byobu -- byobu
Type=Application
StartupWMClass=byobu
Categories=GNOME;GTK;Utility;
X-GNOME-Gettext-Domain=byobu
它巧妙地将 byobu 窗口放在 byobu 图标下。它之所以有效是因为“StartupWMClass”和“--class=”具有相同的值。如果您打开一个没有 --class=byobu 的新终端窗口,它不会堆叠在同一图标下。