这是 gnome 中问题的示例。但是,当我在 Xfce 中尝试此操作时,出现了同样的问题。
我在键盘上设置了一个超级键。它适用于键盘快捷键,并且在使用 xev 检查时似乎没问题。但是,应用这些 gsetting 不起作用:
org.gnome.desktop.wm.keybindings switch-windows ['<Hyper>Tab']
org.gnome.desktop.wm.keybindings switch-windows-backward ['<Hyper><Shift>Tab']
即 gnome gsettings 命令是:
gsettings set org.gnome.desktop.wm.keybindings switch-windows "['<Hyper>Tab']"
当使用 Hyper 进行开关应用程序和循环窗口时,也会出现同样的问题 - 这也不起作用。然而,当使用 Super 或 Alt 等时,所有组合都会按预期工作。
我还注意到,完全可以将 Hyper+1,2, 3, ... a, b, c 绑定到操作(例如使用自动键)。重要的是,还可以将 Hyper+Tab 绑定到其他操作 - 这很好用。那么 Hyper+Tab 和窗口切换设置之间的交互似乎很奇怪?
我最近在 Xfce 中尝试过,也遇到了同样的问题。 (Ubuntu 19.04)。所以它要么与 gnome 和 Xfce 中的共享组件有关,要么与 gnome/Xfce 根本无关。
主要问题:Hyper 不工作什么?
现在,我已经在几个论坛上发布了这个问题,在 IRC 等上提问。
- https://gitlab.freedesktop.org/xkeyboard-config/xkeyboard-config/issues/186
- https://discourse.gnome.org/t/keyboard-map-lated-issue-hyper-key-not-working-in-gsettings-for-org-gnome-desktop-wm-keybindings-window-app/2129
- https://gitlab.gnome.org/GNOME/gnome-control-center/issues/778
- https://askubuntu.com/questions/1188046/setting-gnome-window-switching-to-hyper-doesnt-work
- https://github.com/bjohas/Ubuntu-keyboard-map-like-OS-X也
- 对 upwork 给予奖励。
次要问题:为什么没有答案?这个问题真的很难吗?我是不是问错地方了?这是一个别人没有注意到的深奥问题吗?我很想知道!
编辑。xev 的输出已删除 2019-11-18
答案1
使用 xev 查看键盘的建议使我发现了可能的问题。尤其,
xmodmap -pm
显示 mod5 过于拥挤,我的修改已包含在以下默认地图(针对 xkb 美国键盘布局)中:
mod4 Super_L (0x25), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
与我的地图相比
mod4 Super_L (0x25), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 <OTHER_KEYS, inc. Hyper_R> ISO_Level3_Shift (0x5c), Mode_switch (0xcb)
所以 ISO_Level3_Shift 是沿着 Hyper 触发的,因此不起作用。
编辑。 2019年11月18日。基本上固定为超级,然后使用不同的模组号就可以了。有关详细信息,请参阅此处的文章:https://github.com/bjohas/Ubuntu-keyboard-map-like-OS-X/blob/master/Hyper%20key.md