Kevin Milburn - 2008-05-03

Keytouch does a great job of getting multimedia keys to work, but there are limitations with multiple sessions and XGL.

To get around this, and also allow the keys to work directly in the desktop environments, there are two steps that need to be taken.

Firstly, one you've got the keyboard working, stop keytouchd, and prevent it from loading by modifying (or removing) /etc/X11/xinit/xinitrc.d/92keytouchd_launch. 
Note : using keytouch to modify the keyboard will restart keytouchd, and there is no need to assign actions in keytouch as they will not be used.

Secondly, use xev to get the keycodes, and use xmodmap to load the appropriate mappings from keycode to XF86 symbols.

E.g. add lines like the following to ~/.Xmodmap,  and call 'xmodmap ~/.Xmodmap' to load the mappings.
keycode 220 = XF86ZoomIn
keycode 204 = XF86Eject

see for more info

Once this has been done, the keys should be recognized by X, and are usable by KDE, etc.  In KDE, use the Menu editor, or control center (regional & accessibility -> Input Actions or Keyboard Shortcuts) to assign the keys to someting  useful,  XMMS, Amarok, etc should also recognise the keys.

For the more adventurous, it is also possible to get the keytouch working using the xkb system  (I can elaborate if desired)