Estou usando xkbcomp
para trocar as teclas Alt e Win em um teclado Apple meu.
Isso funciona:
xkbcomp -w0 -I"$DIR" "$DIR/keymap/mykbd" $DISPLAY
... mas muda o layout de todos os teclados, e isso não acontece porque eu estou freqüentemente mudando entre uma posição de pé e sentada (e trocando teclados).
Eu me dei ao trabalho de especificar um dispositivo. O texto da ajuda xkbcomp
diz: -i <deviceid> Specifies device ID (not name) to compile for
xkbcomp -w0 -I"$DIR" -i 16 "$DIR/keymap/mykbd" $DISPLAY
... mas isso parece não ter efeito!
Eu desenhei o ID 16
de xinput list | grep Magic\ Keyboard
. Eu também tentei /dev/input/event18
como um id, tirado de xinput list-props 16 | grep 'Device Node'
, mas isso não produz um efeito melhor.
Atualização:
Surpreendentemente, quando eu forneço o id de Virtual core keyboard
em vez de Magic Keyboard
, eu faço obter um efeito: o novo mapeamento é aplicado ao meu teclado mágico, e se eu continuar a digitar no teclado do meu laptop integrado, o mapa de teclas então será revertido para a configuração original.
Eu não posso explicar isso. Alguém tem alguma ideia?