xkb:如何使用 win + capslock 切换键盘布局?

xkb:如何使用 win + capslock 切换键盘布局?

我想设置自定义快捷方式来使用 更改键盘布局setxkbmap。例如win_capsWin+ CapsLock)。该选项未列出在/usr/share/X11/xkb/rules/base.lst

我怎样才能实现这个目标?

答案1

您必须定义一个自定义选项,例如win_caps_toggle
将以下定义添加到您的/usr/share/X11/xkb/symbols/group

// toggle using win + capslock as combo
partial modifier_keys
xkb_symbols "win_caps_toggle" {
    key <CAPS> {
        type[Group1]="PC_SUPER_LEVEL2",
        symbols[Group1] = [ Caps_Lock, ISO_Next_Group ]
    };
};

以及以下描述给您usr/share/X11/xkb/rules/evdev.lst

grp:win_caps_toggle Win+Caps Lock

grp部分下的任何位置(例如,在 下grp:caps_toggle)。
然后你可以运行

setxkbmap -option grp:win_caps_toggle

Win+设置CapsLock为更改键​​盘布局的快捷键。


笔记:这个解决方案不适用于 gnome 3。我认为为了使其工作,必须在 gnome 中禁用某些功能;我尝试禁用gnome-settings-daemon键盘插件和mutter概览键,但没有成功。不过与其他 DE 配合得很好。

相关内容