我已删除 GNOME 默认的 Super 键绑定,并尝试使用 gsettings 将其重新绑定到其自己的键:
matt@hydrogen:~$ gsettings get org.gnome.settings-daemon.plugins.media-keys custom-keybindings
['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/']
matt@hydrogen:~$ gsettings get org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/ binding
'<Super>'
用 gsettings 设置它可以正常进行,但是却不起作用。
在 GNOME 设置 GUI 中,它显示为“已禁用”:
我考虑过使用 xbindkeys,但不幸的是,它不支持我目前正在使用的 Wayland。显然,GNOME 似乎不喜欢我这样做,但有什么可能的解决方法吗?
答案1
据我所知,更改按下和释放的行为Super需要使用实用程序ksuperkey
。请参阅我的答案在这里了解有关 ksuperkey 的更多背景信息以及在哪里可以找到它。一个警告:该实用程序可能在 Wayland 中可以正常工作,但我不确定。
无论如何,您需要做的第一件事是禁用Super显示概览的键:
gsettings set org.gnome.mutter overlay-key ''
您现在可以先尝试一下自己的方法是否有效。如果有效,请告诉我们,因为这是最直接的方法。不过,我对此表示怀疑,然后您可以尝试使用 ksuperkey。
一旦启动,ksuperkey 默认将按下和释放重定向Super到Alt+ F1。有两种可能的方法:1)将Alt+重新绑定F1到您的自定义命令(默认情况下,在 Gnome 中,它显示“菜单”,即概览)或 2)通过使用选项启动 ksuperkey 重定向到另一个键盘组合-e
,例如
ksuperkey -e 'Super_L=Control_L|space'
将重定向Super到Ctrl+ Space。
该实用程序必须正在运行,因此您需要在登录后让它自动启动。