I have a keyboard (A4TECH X7 G800) that features duplicates of the keys: +-*/´å¨,.ö and some more. The reason to this is that they can be used in games (they have convenient positions). But several of these keys require a trailing char (ü, ñ) or a space (^~) to print, which renders them completely useless in games.
I've been (unsuccesfully) trying to elimininate the need for these "extra characters" so that they would print immediately, but being able to change one, say "." (period), without affecting the other would be a much better solution.
I found this when trying to find an answer:
Quote:
A little background note: When you hit a key on your keyboard, the linux kernel generates a raw scancode for it (if it's assigned). Each scancode can be mapped to a keycode. This is at kernel level. X has a (quasi) total independent way of mapping keys: X reads the kernel keycode table at startup, then map the keycode to its independent keycode table (it's the same as the kernel keycodes but different ). Then each keycode can be mapped to a keysym, i.e. a string which represent a key or suggest an action. Thus to have our keys fully functional, they need a kernel scancode/keycode plus a X keycode/keysym. It could seem weird, and it is, but X developers have their reason to keep a separate keyboard mapping from the kernel. It's not difficult at all, it's only a quite tedious procedure.
from --> http://whynotwiki.com/GNU/Linux_/_De...assing_through
|
But I've been googling about reading raw scancodes and I don't get how to do it. It just shows cryptic C programs and such.
So how would I (if possible) go forth with this?
Im running Ubuntu 8.10 and I use a Swedish keymap.
Thanks in advance
/Richard