Hi, isn't xmodmap (man xmodmap) doing this job? Karl Am 26.06.2017 um 22:44 schrieb Paul Groves:
Hi, I asked this question before but I still have been unable to work out how to resolve it.
This is on an ubuntu 17.04 box. I have asked twice on ubuntu forums but have had no replies at all in 2 years! Also I seem to get more sense out of those on the opensuse list. :)
I have a very old keyboard, Tiny branded (yes Tiny! remember them?) PS/2 keyboard (model: KB-9805). It has many hotkeys on the top, currently they either do not work (xev doesn't show up the press) or they are mapped wrong (xev shows that a diffferent button has been pressed).
It is a great keyboard as it is built to last. Currently I have used it for 19 years and it has still not even had the letters wear off! Unlike my other PC with which I have lost count how many modern keyboards I have worn out.
Current mappings are as follows (Key > Mapping):
Internet > Mute
Close > Not detected
HK1 > Home Page
HK2 > Not detected
HK3 > Vol +
HK4 > Calculator
Prev Track > Vol down
Stop > Stop
Play > Play
Next Track > Next Track
Vol + > Not detected
Vol - > Not detected
Mute > Not detected
Sleep > Not detected
So I need change the mappings of: Internet / HK1 / HK3 / HK4 / Prev Track so that they are recognized by the system as the correct key.
Then I need to add mappings to: Close / HK2 / Vol + / Vol - / Mute / Sleep so they are recognized at all!
As far as I understand it, when you press a button the kernel sends a scancode to the system which then maps it to a keycode. They keycode is then used to map to a function. Is this correct?
So far I have found that if I press a key that does not work (in this case the close hotkey, then run dmesg | tail -2 I get this output:
[23566.462308] atkbd serio0: Unknown key released (translated set 2, code 0xa3 on isa0060/serio0). [23566.462311] atkbd serio0: Use 'setkeycodes e023 <keycode>' to make it known.
This gives me, on the first line 0xa3 and on the second line e023 What are these two codes? Are they the scancode or keycode?
As for the keys that do work I have found that if I go to a terminal (ctrl + alt + f2) and press one of the keys that are already mapped to something (in this case the internet hotkey) then run showkey -k I get this output:
0xe0 0x20 0xe0 0xa0
I am assuming I can ignore the 0xe0? So this leaves me with 0x20 and 0xa0 which I assume are key press and key release. Is this correct? Are they the scancode or keycode?
I have written these codes down for all my hotkeys. How can I now change their mappings?
Any help would be greatly appreciated.
-- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse+owner@opensuse.org