alguma opção xkb falha no Gnome

1

Gostaria de fazer uma pergunta sobre as configurações do xkb.

Considere o seguinte cenário. Eu quero dois layouts de teclado e uma maneira de alternar facilmente entre eles. Vamos considerar os EUA e os EUA (dvorak).

Para mudar, quero usar a opção xkb grp:shifts_toggle , o que torna

ShiftR + ShiftL := ISO_Prev_Group e ShiftL + ShiftR := ISO_Next_Group

Para obter o comportamento desejado, executo o comando setxkbmap -layout us,"us(dvp)" -option grp:shifts_toggle
que define corretamente a opção desejada (testado com setxkbmap -print ).

O problema vem com o ambiente de desktop. Em particular sob openbox tudo funciona fora da caixa enquanto sob gnome a opção fica definida mas não funciona.

De qualquer forma, quando eu emito o comando no gnome, as chaves são corretamente remapeadas, ou seja, o ISO_Next(Prev)_Group é acionado, mas não entra em vigor no sistema (testei-o com xev).

Eu acho que o gnome usa algum outro utilitário que depende do xkb, mas o substitui de alguma forma.

Para completar, dou minhas configurações de xkb antes de qualquer comando ser emitido.

>> setxkbmap -print -verbose 10

Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules:      evdev
model:      pc105
layout:     us,us
variant:    altgr-intl,
options:    terminate:ctrl_alt_bksp
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+us(altgr-intl)+us:2+inet(evdev)+terminate(ctrl_alt_bksp)
geometry:   pc(pc105)
xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+us(altgr intl)+us:2+inet(evdev)+terminate(ctrl_alt_bksp)"   };
    xkb_geometry  { include "pc(pc105)" };
};

EDITAR: Parece que definir grp:shifts_toggle diretamente no arquivo de configuração em xorg.cong.d faz a combinação funcionar pelo menos em ISO_Next_Group . No entanto ISO_Prev_Group still is still not effective .

    
por nicmus 05.04.2016 / 10:23

0 respostas

Tags