如何将全局菜单和 HUD 添加到 Gnome Shell(Gnome Global AppMenu 扩展)

更新: Gnome Global AppMenu 扩展存储库已被删除,所以我添加了一个指向一个项目的链接,该项目将它分叉(但没有添加修改)。 不过 GNOME Shell 有一个新的全局菜单和 HUD。

作为我们之前关于使用 Unite 扩展使 Gnome Shell 更像 Unity 的文章的延续,本文包括使用 Gnome Global AppMenu 扩展在 Gnome Shell 中添加全局菜单和可搜索菜单 HUD 的说明。

Gnome Global AppMenu 是一个 Gnome Shell 扩展,目前在 beta,它实现了 Ubuntu Unity 对 Gnome Shell 的全局菜单。 该扩展还提供对 HUD 菜单的支持,因此您可以在应用程序的菜单中进行搜索。

扩展开发人员不久前宣布停止该项目,但他在 2018 年 1 月成功添加对 Wayland 的支持时改变了主意。 不过,我只在 X.Org(Ubuntu 18.04 中的默认设置)上测试了 Gnome Global AppMenu 扩展。 本文中的说明不适用于 Wayland。

既然是 beta 软件,Gnome 全局菜单扩展被认为是不稳定的。 在使用之前查看其已知问题部分。

Gnome Global AppMenu 主要特点:

  • 它使用 Unity GTK 模块,因此它支持与 Unity 全局菜单 (AppMenu) 相同的应用程序。 这包括 Gtk+ 2、Gtk+ 3、Qt 5 应用程序、Firefox、LibreOffice 等。 似乎不支持 Qt4 应用程序,至少在默认的 Ubuntu 18.04 设置中(可能可以通过导出一些 env 变量来完成,但鉴于它默认支持 Qt 5,我认为这不值得)。
  • 类似 Unity 的 HUD(平视显示器)功能,允许通过应用程序菜单进行搜索。 如果您在启动应用程序后立即尝试使用此功能,它似乎不起作用,因为它似乎需要一些时间才能加载菜单条目。
  • 借助内置的 Gnome Shell 搜索提供程序,搜索正在运行的应用程序菜单。
  • 实验性的 JAyatana 支持,因此可以为 Java Swing 应用程序启用全局菜单。
  • 支持键盘导航。
  • 高度可配置。

使用 Gnome Shell 3.28.1 (Ubuntu 18.04) 中的全局应用程序菜单使用 Firefox Web 浏览器和 VLC 媒体播放器(使用 Qt5)的屏幕截图:

Gnome Global AppMenu Shell 扩展

Gnome Shell 中的可搜索 HUD 菜单:

Gnome Shell 可搜索 HUD 菜单

就标题栏应用程序而言,Gnome Global AppMenu 无法与所有这些应用程序一起使用。 一些 Gnome 应用程序,如 Nautilus,不再导出菜单,因此您将获得常规的 Gnome AppMenu。 在这种情况下,Gnome Global AppMenu 扩展中的 HUD 功能不会返回任何结果。

Gnome Global AppMenu 允许调整很多设置:

  • 使用扩展作为 Gnome AppMenu 的替代品。
  • 在面板上显示或隐藏应用程序图标或标题(或窗口名称)。
  • 在面板上设置应用程序名称的最大限制(很有用,因此在应用程序之间切换时菜单不会移动)。
  • 可配置的键盘快捷键。
  • 多得多。

查看 Gnome Global AppMenu 设置:

Gnome 全局 AppMenu 设置

设置窗口不是那么漂亮,但它提供了很多配置选项。 事实上,这个窗口太长了,你只能看到上面截图中的一小部分选项。 这里还有几个截图:

Gnome 全局 AppMenu 设置

Gnome 全局 AppMenu 设置

我想补充的最后一件事是 Gnome Global AppMenu 不能很好地与多个显示器配合使用。 它可以正常工作,但您只能在一台显示器上看到全局菜单。 我尝试使用 Gnome Shell Multi Monitors Add-on,它允许在其他监视器上显示顶部面板,但该菜单仅适用于主监视器。

如何使用 Gnome Global AppMenu 扩展为 Gnome Shell 安装全局菜单