如何从 GNOME 菜单中删除 KDE 和 XFCE 应用程序?

如何从 GNOME 菜单中删除 KDE 和 XFCE 应用程序?

我是 Linux 新手。我安装了默认的 Ubuntu 10.10kubuntu-desktop并进行了覆盖。xubuntu-desktop

我想简化菜单,以便与特定桌面相关的应用程序仅在各自的会话期间出现在菜单中。(即,在 Ubuntu GNOME 会话期间菜单中没有 KDE 和 XFCE 应用程序。在 KDE 和 XFCE 会话中也是如此。)

如何通过命令行完成此操作?(我想通过命令行方式学习。)
在执行此操作之前我应该​​备份任何东西吗?

额外信息:
我在谷歌上搜索后发现以及论坛中的其他解决方案,但这些仅针对 GNOME 上的 KDE 场景。也许可以修改它以包括 XFCE,但由于我是新手,我不知道该怎么做。

我也在unix.stackexchange

谢谢!谢谢!

答案1

仅在 XFCE 中显示某些内容的代码遵循相同的想法:

ShowOnlyIn=XFCE;

以下是所有“ShowOnlyIn”的可能性:

http://standards.freedesktop.org/menu-spec/latest/apb.html

不幸的是,据我所知,XFCE 存储 .desktop 文件的方式与 GNOME 存储它们的方式相同,而 KDE 将它们存储在单独的文件夹中(在 /usr/share/applications 中)。这就是为什么 KDE/GNOME 的分离(如您链接的帖子中所述)更容易大规模进行的原因。

所有文件都存储在 /usr/share/applications 中。它们的格式非常简单,您可以将其中任何一个复制到 /home/you/.local/share/applications,它将覆盖该用户的菜单项,因此您可以更轻松地编辑它们,而无需 root 权限。

没有简单的方法可以将 XFCE 应用程序与 GNOME 区分开来,尤其是因为您想看到什么往往是一个见仁见智的问题。这也适用于 KDE,因为只要您有 KDE 库,Dolphin、Konquo​​rer 等就可以在 GNOME 中运行。

我想,如果您打算使用 cmd 行,您可以想出一些 grep/sed 垃圾来选择性地查找和替换某些 .desktop 文件中的文本,但我认为最简单的方法是将您要编辑的文件复制到 ~/.local/share/applications,这样它们就不会被更新覆盖,然后手动编辑它们。除非您安装了无数的东西,否则挑选您想要的东西应该不会太难。

顺便提一下,使用 Nautilus 编辑 .desktop 文件非常困难。您必须将它们拖放到文本编辑器中,通过命令行打开它们,或者编写 Nautilus 脚本将文件定向到文本编辑器。其他文件管理器不会遇到此问题,所以我猜这是一个错误。此外,.desktop 文件在可执行时具有不同的名称,这也可能令人困惑,因为这不是文件的实际名称。

该菜单符合 freedektop.org 规范,您可以在此处了解更多信息:

http://standards.freedesktop.org/menu-spec/latest/index.html

编辑:我最初回答这个问题时忘记了这一点,这是一个非常重要的警告。这仅在使用正确的面板/菜单时才有效。例如,如果您使用带有 GNOME 面板的 xfwm,您将看到所有“ShowOnlyIn=GNOME”项目,反之亦然。我只是想为那些无法使用此功能的人指出这一点 :)

相关内容