我正在运行 Ubuntu 18.04,使用默认的 Gnome 3 桌面 shell 和Frippery 应用程序菜单外壳扩展。
我尝试使用以下方法重新组织菜单菜单自由随后出现了彻底的混乱:menulibre 引入了重复条目、重复类别和其他 alacarte 无法处理的问题。最后(在绝望中)我放弃了 menulibre,备份并删除了所有本地桌面和菜单文件,并让 alacarte 将菜单恢复为默认配置(使用“恢复系统配置”按钮)。我的菜单现在再次正常运行。
但是,我现在有一大堆 *.desktop 文件需要恢复。简单地将它们~/.local/share/applications
与已经存在的新 *.desktop 文件(由 alacarte 在将菜单恢复为出厂默认设置时创建)一起复制回去是行不通的;应用程序不会显示在菜单或 alacarte 中。
目前,将应用程序添加到菜单的唯一方法是使用 alacarte 创建新条目。这将创建一个名为的新文件,alacarte-made.desktop
然后我可以编辑它并填充我试图恢复的桌面文件的详细信息。
但是,我无法将 alacarte-made.desktop 文件重命名为 {application-name}.desktop。一旦我这样做,该条目就会从 alacarte 和菜单中消失,直到文件名恢复为 alacarte-made.desktop。
我的问题:如何恢复现有的.desktop 文件,以便 alacarte 和菜单显示它们?或者,我如何重命名 alacarte-made.desktop 文件更改为任何应用程序名称(就像已经存在的文件一样)以便事情仍然易于管理?
答案1
1. 如何恢复现有的 .desktop 文件以便 alacarte 和菜单显示它们?
alacarte
修改后的菜单文件默认存放位置为$HOME/.config/menus
。例如:$HOME/.config/menus/gnome-flashback-applications.menu
app_01.desktop
将文件添加到科学类别后,gnome-flashback-applications.menu
文件可能如下所示
<?xml version="1.0" ?>
<!DOCTYPE Menu
PUBLIC '-//freedesktop//DTD Menu 1.0//EN'
'http://standards.freedesktop.org/menu-spec/menu-1.0.dtd'>
<Menu>
<Name>Applications</Name>
<MergeFile type="parent">/etc/xdg/menus/gnome-flashback-applications.menu</MergeFile>
<Menu>
<Name>Science</Name>
<Include>
<Filename>app_01.desktop</Filename>
</Include>
<Layout>
<Merge type="menus"/>
<Filename>app_01.desktop</Filename>
<Merge type="files"/>
</Layout>
</Menu>
</Menu>
2. 或者,我如何将 alacarte-made.desktop 文件重命名为应用程序名称(就像已经存在的文件一样)以便于管理?
重命名文件后alacarte-made.desktop
,您必须编辑$HOME/.config/menus/gnome-flashback-applications.menu
以更新桌面文件名。
alacarte
Ubuntu 18.04 的手册页:http://manpages.ubuntu.com/manpages/bionic/man1/alacarte.1.html
其他版本也有手册页。