What keyboard driver is used?

Marvin Raaijmakers marvin.nospam at gmail.com
Mon Jun 26 10:35:20 PDT 2006

Yes it might look I am doing something wrong, so I will explain what I
am doing.
I am the developer of keyTouch (http://keytouch.sf.net) which is a
program that allows the user to bind actions to the extra function keys
of the keyboard. There are 2 programs in the keyTouch package that are
interesting in this story. The first is keytouch-init. This program
assigns kernel keycodes (so not X keycodes) to the scancodes (sent by
the keyboard) of the extra function keys. The second program is
keytouchd which grabs the extra function keys under X. To do this it
needs to know the X keycode of the extra function key. The X keycode is
not the same as the kernel keycode, so we need a kernel keycode to X
keycode translation. This translation depends on the keyboard driver
that is used by X. For example the kbd (this driver is currently only
supported by keyTouch): because this driver wants scancodes from the
kernel, the kernel needs to translate the kernel keycode to a scancode
(done by a fixed table). The evdev driver just wants the kernel keycode
and uses this a the X keycode.
So my application is not just a normal X client, but communicates both
with the kernel and the X server.

Note: where I use the word "kernel" I mean the Linux kernel.

- Marvin Raaijmakers

On Mon, 2006-06-26 at 11:11 -0400, Adam Jackson wrote:
> On Sunday 25 June 2006 12:51, Marvin Raaijmakers wrote:
> > Does somebody know how to write code that can "detect" what keyboard
> > driver is in use?
> If you have to know, you're solving the wrong problem.  What problem are you 
> attempting to solve?
> - ajax

More information about the xorg mailing list