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ともうまく機能します。

関連情報