窗口管理器菜单中缺少 Emacs 条目

窗口管理器菜单中缺少 Emacs 条目

从前一段时间起,我的 Debian 系统上就不再有 Emacs 的菜单项了。同样的情况发生在两台不同的机器上——一台运行测试,一台运行不稳定。我尝试过切换窗口管理器,并创建一个全新的用户来查看新用户的菜单中是否有 Emacs 条目,但这并没有帮助。

这是 Debian 菜单的图像,没有 Emacs 24 的条目:

菜单中缺少 Emacs

Emacs24 的条目不在菜单中的任何位置。该图像是在 Openbox 运行时捕获的,但是当我切换到 sawfish 或 Fluxbox 时,菜单项仍然丢失。我也update-menus以用户和 root 身份运行。

我也没有在 Debian bug 跟踪系统上找到任何东西......

编辑:我检查过该$XDG_DATA_DIRS变量,它没有设置;这是我的/usr/share/applications/emacs24.desktop

[Desktop Entry]
Version=1.0
Name=GNU Emacs 24 (GUI)
GenericName=Text Editor
Comment=GNU Emacs is an extensible, customizable text editor - and more
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
TryExec=/usr/bin/emacs24
Exec=/usr/bin/emacs24 %F
Icon=emacs24
Type=Application
Terminal=false
Categories=Utility;Development;TextEditor;
StartupWMClass=Emacs
Keywords=Text;Editor;

有什么我错过的吗?我还能尝试什么?

答案1

菜单应从文件生成$XDG_DATA_DIRS/applications/*.desktop,其中$XDG_DATA_DIRS通常指向至少一个目录:/usr/share.每个文件都描述了几个菜单项的属性,例如其名称、要运行的程序、图标、类别等。该文件应该在程序安装期间生成,因此在您的情况下,在该过程中可能出现问题。

不管怎样,你可以自己创建这个文件。最简单的方法是仅复制现有文件之一并仅更改“名称”和“执行”条目。毕竟只要重新启动你的 wm,就应该读取新文件。

这是我的emacs.desktop,仅供参考:

[Desktop Entry]
Type=Application
Version=1.0
Name=GNU Emacs
GenericName=Emacs
Comment=Emacs is the extensible, customizable, self-documenting real-time display editor
Comment[de]=Emacs ist der erweiterbare, anpassbare, selbst-dokumentierende Echtzeit-Editor
Comment[es]=Emacs es un editor ampliable, adaptable, mismo documentado, de tiempo real
Comment[fr]=Emacs est l'éditeur plein écran avancé, auto-documenté, personnalisable et extensible
Icon=emacs
TryExec=/usr/bin/emacs
Exec=/usr/bin/emacs %F
Terminal=false
MimeType=text/css;text/english;text/html;text/plain;text/x-c;text/x-chdr;text/x-csrc;text/x-c++;text/x-c++hdr;text/x-c++src;text/x-java;text/x-makefile;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;
Categories=Development;TextEditor;
StartupWMClass=Emacs

正如您在我的例子中所看到的,emacs 被分为两个菜单类别:“开发”和“文本编辑器”。您可以根据现有的菜单类别调整这些名称。

相关内容