Individual keyboard remapping (again)
Florian Echtler
floe at butterbrot.org
Thu Oct 28 07:35:49 PDT 2010
Hello again,
On Wed, 2010-10-20 at 21:06 +0200, Julien Cristau wrote:
> On Wed, Oct 20, 2010 at 20:25:51 +0200, Florian Echtler wrote:
>
> > $ setxkbmap -device 9 -print
> > xkb_keymap {
> > xkb_keycodes { include "evdev+aliases(qwertz)" };
> > xkb_types { include "complete" };
> > xkb_compat { include "complete" };
> > xkb_symbols { include "pc+de+inet(evdev)" };
> > xkb_geometry { include "pc(pc105)" };
> > };
> > $ setxkbmap -device 8 -print
> > xkb_keymap {
> > xkb_keycodes { include "evdev+aliases(qwertz)" };
> > xkb_types { include "complete" };
> > xkb_compat { include "complete" };
> > xkb_symbols { include "pc+de+inet(evdev)" };
> > xkb_geometry { include "pc(pc105)" };
> > };
> >
> > AFAICT, the output should be different? What am I doing wrong?
> >
> setxkbmap -print is probably not what you want. It uses the
> _XKB_RULES_NAMES root window property to figure out the
> rules/model/layout/variant/options, not the actually set keymap. That
> property is not multi-device aware. Use 'xkbcomp -i <device> :0 -'
> instead.
it took me a while to give this another try. Unfortunately, I'm still
not getting the hang of it... I can _seemingly_ set two different
keymaps with "xkbcomp -i <dev> mykeymap.xkb :0" and see the differences
with "xkbcomp -i <dev> :0 -". However, the global effect is that all
keyboards adhere to the _last_ keymap that was set, regardless of what
xkbcomp says.
Here's the output of "xinput list":
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ HID 04d9:1400 id=10 [slave pointer (2)]
⎜ ↳ X10 WTI RF receiver id=8 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ HID 04d9:1400 id=9 [slave keyboard (3)]
↳ UVC Camera (046d:09a1) id=11 [slave keyboard (3)]
The devices in question are those with ID 9 (USB keyboard) and ID 8 (X10
remote). Could the problem be related to the fact that the X10 remote is
classified as a slave pointer? Can this be changed?
Thanks,
Florian
More information about the xorg
mailing list