Read usage codes from a specific USB keyboard
Kralj Karlo
karlo at klarinet.osamsb.hr
Sun Jan 26 08:40:47 UTC 2020
How can I do this?
1. Prevent X from using a specific USB keyboard.
(I can identify the keyboard by name or by device.)
2. In a different program, read usage codes coming from that specific
keyboard.
In case that is not clear, here is some context. I have a keyboard
next to my bed. When I press a button on the keyboard, my computer plays
the time, out of the speakers. This way, I can determine what time it is
without turning on the lights and without maintaining a separate clock.
This is the only purpose of the keyboard.
The present implementation is with xbindkeys. The xbindkeysrc looks like
this.
"speak-date"
KP_0
"speak-date"
KP_1
"speak-date"
KP_2
"speak-date"
KP_3
"speak-date"
KP_4
"speak-date"
KP_5
"speak-date"
KP_6
"speak-date"
KP_7
"speak-date"
KP_8
"speak-date"
KP_9
"speak-date"
KP_Delete
"speak-date"
KP_Add
"speak-date"
KP_Subtract
"speak-date"
KP_Multiply
"speak-date"
KP_Divide
"speak-date"
KP_Enter
The attached keyboard is a number pad, and I don't use a number pad
otherwise, so it is fine for me to assign all of these keys in
xbindkeys. But there is still a problem with this approach: If I lock
my screen with slock, then the keypresses are not sent to xbindkeys,
so I can't check the time.
I would like to configure my computer so that presses of this keyboard
are ignored by X and so that I can read the presses in a separate
program that just watches for keypresses and runs speak-date when it
receives them.
More information about the freebsd-questions
mailing list