xkb: como alternar o layout do teclado com o win + capslock?

4

Eu quero definir um atalho personalizado para alterar o layout do teclado usando setxkbmap . Por exemplo win_caps ( Win + CapsLock ). Esta opção não está listada em /usr/share/X11/xkb/rules/base.lst

Como posso conseguir isso?

    
por ddnomad 23.11.2015 / 11:07

1 resposta

3

Você terá que definir uma opção personalizada, por exemplo win_caps_toggle .
Adicione a seguinte definição ao seu /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 ]
    };
};

e a seguinte descrição para o seu usr/share/X11/xkb/rules/evdev.lst :

grp:win_caps_toggle Win+Caps Lock

em qualquer lugar na seção grp (por exemplo, em grp:caps_toggle ).
Você pode então correr

setxkbmap -option grp:win_caps_toggle

para definir Win + CapsLock como o atalho que muda o layout do teclado.

Nota : esta solução não funciona com o gnome 3. Eu acho que para fazer isso funcionar algumas coisas precisam ser desabilitadas no gnome; Eu tentei desativar o plug-in de teclado gnome-settings-daemon e a chave mutter overview, mas não é necessário. Funciona bem com outros DE's embora.

    
por 30.11.2015 / 21:56