哪些桌面环境允许使用Super+<数字>在窗口之间切换?

除了Unity之外,还有哪些许多桌面环境支持使用Super+1/2/3/.../9在当前打开的窗口之间切换?

推理

如果您经常在同几个应用程序之间切换,比如浏览器、文件管理器和编辑器,但同时也有其他应用程序打开,那么使用Alt+Tab切换到所需窗口将需要更多时间,这时这个功能特别方便。1

这个键盘快捷键每分钟平均可以节省我大约5秒钟,所以一天可以节省大约40分钟,而且Windows 7也支持这个功能。添加自定义的应用程序键盘快捷键不起作用,因为按下快捷键会启动一个新的应用程序实例。2

1. 桌面环境将首先按照最常使用的窗口进行排序,但您必须先看一眼并确定需要按Alt+Tab多少次;而使用Super+1或Super+2,您总是知道哪个快捷键对应哪个应用程序。

2. 有些应用程序有一个选项,只允许一个实例运行,但这只是个别情况,而不是常规。即使在这种情况下,启动新实例并立即退出时也会出现明显的闪烁。

您可以使用wmctrl编写脚本,可以查看我的博客文章(http://www.mreq.eu/2013/06/lightning-fast-window-switching-in-ubuntu/)。此外,还有一些封装器,如我的wmctile(https://github.com/mreq/wmctile)。 - mreq
你可以很容易地使用Unity和XFCE来完成这个任务,但是防止应用程序出现多个实例完全取决于应用程序的代码。你需要编写一个脚本来实现这个功能。一个简单的解决方案是使用Alt+Tab,在释放之前使用鼠标选择所需的应用程序。 - Panagiotis Tabakis
@PanagiotisTabakis:如果你想提高生产力,完全不能使用鼠标。在Unity中,应用程序代码不需要支持任何东西-快捷键只是将焦点放在窗口上(我认为这被称为“提升”);它不会重新启动应用程序。 - Dan Dascalescu
@DanDascalescu 我明白了。所以,到目前为止Unity是唯一的选择。我正在使用XFCE,当按下键盘组合键时,已经运行的应用程序会生成一个新实例。 - Panagiotis Tabakis
我觉得我可能有一个脚本的想法,可以实现你想要的功能...正如丹在他的回答中指出的那样,在Unity中,只有当程序正在运行时,你才能使用Super + num快捷键切换到该程序。如果你愿意,我可以编写一个快捷方式,重新组织启动器,使你可以使用Super+number从1、2、3到N。如果你对此感兴趣,请告诉我。 - Sergiy Kolodyazhnyy
刚刚注意到你既是问题的提出者,也是回答的作者。无论如何,我的建议依然有效。 - Sergiy Kolodyazhnyy
@Serg:我很想要一个脚本,可以在Cinnamon中启用Super+num的功能。 - Dan Dascalescu
有了一点帮助,XFCE可以做到的:http://askubuntu.com/questions/557084/any-way-to-open-windows-from-the-windows-bar-using-a-shortcut。实际上,所有的都可以 :) - Jacob Vlijm
如果你最后在一个不支持它的环境中结束,考虑使用jumpapp - gzm0
1个回答

支持Super+数字键的桌面环境

这些桌面环境原生支持通过Super+数字键进行任务切换,几乎无需配置。

KDE Plasma

该功能在Plasma 5.9中被实现。您仍需要取消任务管理器设置中的“保持启动器分离”以保留1..9的顺序,否则数字将在关闭/打开应用程序时重新分配。

GNOME 3(Ubuntu 20)

GNOME于2019年1月实现了Super+N应用程序切换。以下是Ubuntu 20中GNOME 3的屏幕截图:

GNOME 3

Ubuntu 18 GNOME

Ubuntu的GNOME 修改版 支持Super+数字这个组合键,但有一个令人烦恼的问题:当切换到一个有多个窗口的应用程序时(通常是Chrome/Firefox),你需要再选择要切换到哪个窗口

Unity (Ubuntu 16)

默认支持这个快捷键组合。如果应用程序正在运行,Unity会切换到它;如果没有运行,则会启动该应用程序。

Unity

Linux Mint Cinnamon

从20版本开始,Cinnamon支持使用Super+数字键来切换到“现代”面板布局。

Cinnamon "modern" Panel Layout

这个功能不太容易被发现,因为Cinnamon在按下Super时,任务栏图标上不会显示任何数字提示。

请注意,该功能在2015年首次请求后,经过多年的实现才变得棘手,然后是在2016年由我自己请求

通过扩展/插件/小部件支持的桌面环境

请注意,让插件作者构建这样的功能存在很多问题。在几年的时间里,我没有找到任何一个插件/扩展程序/宏/等等能够正确地完成这项工作。这种功能需要很好地集成到窗口管理器中,这也得到了MATE桌面环境的一位作者的认可

不支持Super+数字的桌面环境


只是为了澄清一下:XFCE默认支持使用Super+数字键组合来切换应用程序,但如果应用程序已经在运行,则不会切换到该应用程序,而是选择生成另一个实例。 - Panagiotis Tabakis
@PanagiotisTabakis:我很好奇这样做的潜在意义是什么;为什么要一遍又一遍地启动完全相同的应用程序实例,而不是切换到它们?听起来更像是一个未完成的功能或者一个错误。 - Dan Dascalescu
我不认为这是一个错误,而是一个没有考虑到效率的简单功能设计,否则它会有选择偏好方式的选项。此外,有相当数量的用户因为他们所从事的工作性质而更喜欢这种方式。顺便说一下,我认为你应该看一下这个run-or-raise应用程序。我认为它可以在任何X11桌面上实现你想要的功能。 - Panagiotis Tabakis
而且以某种奇怪的方式,我无法在提到你的名字时使用@符号,即使我输入了它,在保存后也会消失。(之前的评论错过了5分钟的编辑窗口-.-) - Panagiotis Tabakis
在Unity中,您可以通过将应用程序锁定到启动器来轻松排序应用程序。 - vdudouyt
Ubuntu 18.04(Ubunut Gnome,不是原版)配备了Appkeys扩展,恢复了Unity中的Super-<num>切换行为。https://extensions.gnome.org/extension/413/dash-hotkeys/ - Zaar Hai