Detecting the used keyboard driver

Daniel Stone daniel at fooishbar.org
Tue May 5 01:14:24 PDT 2009


On Tue, May 05, 2009 at 09:33:29AM +0200, Gregory Smirnov wrote:
> 2009/5/4 Alan Coopersmith <Alan.Coopersmith at sun.com>
> > Your program has always been broken then - X keycodes are different
> > on different platforms and servers, and as kbd/evdev show, sometimes
> > even different drivers on the same server/platform.   It has been
> > well documented for 20+ years that the only valid meaning of an X keycode
> > is to lookup a keysym in the current table and that applications should all
> > use keysyms, not keycodes.
> >
> > > Evdev is suceeder of xkb, why *some* keycodes has just changed without
> > > an option to check the system for compatibility?
> >
> > evdev does not suceed or replace XKB - they're two different levels of
> > the stack.  evdev replaces xf86-input-kbd on Linux systems - both of
> > those drivers report up to the core Xorg server which uses XKB.
> >
> >
> But total dependency on keysyms is wrong as well. That is why Copy/Paste
> (Ctrl+C/V) does not work properly in multi-language environments.

The fix for Ctrl+C/Ctrl+V is not to hardcode particular keycodes, but
to check the keysym in all groups.

The X specification explicitly states that keycodes have no actual
meaning beyond the keysyms assigned to them in the keymap.  Ignore that
at your peril.

Cheers,
Daniel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 197 bytes
Desc: Digital signature
URL: <http://lists.x.org/archives/xorg/attachments/20090505/0d3b8e49/attachment.pgp>


More information about the xorg mailing list