如何将左侧的Super键设置为快捷方式,打开“显示应用程序”菜单?

在Ubuntu 18.04.1上,我想只使用左边的Super键来简单地打开“显示应用程序”菜单(也称为Dash),就像点击dock图标(带有9个点)一样,并且最好在关闭时不显示任何打开的程序。
我可以用“Super + A”来打开它,甚至可以用“Super R”再次关闭它,但是“Super L”似乎什么都没做。
在Xfce中,通过为“Super L”添加自定义的键盘快捷方式,并将命令设置为“xfce4-popup-whiskermenu”,可以实现类似的功能,这将打开和关闭一个带有常用应用程序的菜单。不幸的是,我不知道打开和关闭“显示应用程序”菜单的命令是什么。
在新的Gnome Shell中是否有办法添加这样的快捷方式?

2“显示应用程序”默认的快捷键是<Super>+<A>。顺便说一下。 - pomsky
我刚刚验证了一下,你是对的。我确信已经尝试了表格中的所有快捷方式,但出于某种原因,我可能错过了这个。 - Prototype700
Xubuntu允许原生更改这个,但是当然你不再使用Unity了。 - William
4个回答

解决方案1:Gnome扩展

安装扩展在应用视图中启动覆盖,使用Super键单独打开应用概览。

解决方案2:xcape(更通用的方法,允许您对super键进行任意操作)

通过使用实用程序xcape,您可以将按下/释放super键映射到任何键组合。可以使用命令sudo apt install xcape安装xcape

在这种情况下,您将使用命令xcape -e "Super_L=Super_L|a"启动xcape。这将将单独按下和释放super键重新映射为打开应用菜单的默认键组合。

  • 禁用将super键绑定为显示概览的默认设置。您可以使用命令gsettings set org.gnome.mutter overlay-key ''或使用dconf-editor来完成此操作。
  • 通过在您的~/.config/autostart文件夹中放置一个.desktop文件,使xcape自动启动。

这是一个xcape.desktop文件的示例:

[Desktop Entry]
Categories=Utility;
Comment=Map super key
Exec=sh -c 'sleep 0.4 ; xcape -e "Super_L=Super_L|space"' 
Icon=keyboard
Name=xcape
StartupNotify=false
Type=Application
X-GNOME-Autostart-enabled=true

如果需要的话,可以安装扩展按ESC键关闭应用程序列表概览,这样按下Esc键会返回到桌面而不是概览界面。在Ubuntu 20.04中,可以使用一个分支扩展:按ESC键关闭应用程序列表概览 | 已更新,由paperthin提供,或者ESCape Overview


嗨vanadium,谢谢你的提示。我会考虑这个建议,但是我不喜欢为了这个非常简单的快捷键更改而必须下载一个工具,并且"需要先禁用Gnome Shell中超级键的正常操作"。 - Prototype700
喜欢与否,那是我唯一知道的方式。在这里,“禁用”正常操作毫无意义。只需一个命令,你就可以将其重置为默认设置。你也可以使用dconf-editor。我自己就用这种方法来启动Albert,按下<super>键即可。 - vanadium
2找到了一个能解决问题的扩展。我修改了我的解决方案,包括了这种方法,但是我保留了ksuperkey,因为它对其他Gnome Shell调整者可能有用。谢谢你的奖励 ;) - vanadium
好的,你来了。如果你考虑进一步扩展你的回答,我仍然对你提到的dconf解决方案感兴趣。不过这些扩展工作得很好。你是怎么找到它们的?它们没有共享一个关键词,但我可能搜索得不好,也没有时间进一步查找。 - Prototype700
我正在使用第二个扩展。很久以前我看到过第一个扩展,但是实际上忘记了它。非常巧合的是,我偶然间又碰到了它,并且确实意识到我的第一个答案(作为第二个选项保留在这里)太复杂了 ;) dconf 的唯一变化是关闭了 Gnome Shell 中的 <super> 绑定键,以便实用程序 ksuperkey 可以无干扰地接管。完全无缝运行,你可以将任何你想要的东西绑定到 <super>,如 Gnome 应用视图或你自己的启动器,或者其他任何东西。 - vanadium
在Gnome 3.36(Ubuntu 20.04中提供的版本)中,从应用程序列表关闭概览的ESC键目前无法正常工作。 - Rael Gugelmin Cunha


你还可以使用xmodmap来更改特定按钮的功能 xmodmap -e 'keycode 68 = Menu' 在这里,你可以找到触发菜单的按键: xmodmap -pke | grep Menu

你可以使用以下命令:
gsettings set org.gnome.mutter overlay-key '' 2> /dev/null
gsettings set org.gnome.shell.keybindings toggle-application-view "['Super_L']" 2> /dev/null