"bucklespring" lets you pretend you have a keyboard for grown-ups, and
"buckle -f" is the only sane way to start it (as otherwise it'd be silent
for any keys not present on the author's crippled rump "Space Saver"
variant).
A week ago, I had to urgently replace my microphone headphones. So I
strolled to a brick-an-mortar shop to pick from what they had. The only set that appeared decent enough had an USB connector instead of a pair of jacks like $DEITY intended. They give pretty good sound, although a bright
BLINKING light on the volume control is grounds for murder. Too bad, the volume control, consisting of four buttons instead of a wheel, mostly didn't work (except for the "mic mute" button).
A few days later, I finally got around to work on fixing ALSA support in Clementine (one of my four reasons why:
https://angband.pl/tmp/clem/).
While doing so, I started bucklespring as a test for handling audio devices open by another program.
I try to adjust volume level of the headphones, and, by muscle memory, reach for the volume control on the cable. It still doesn't work, but I _hear_
the buttons. WTF? Turns out that three of the buttons, instead of being handled in hardware, present themselves to the computer as a keyboard, and
send XF86AudioLowerVolume, XF86AudioRaiseVolume and XF86AudioMute key codes, assuming they're handled by the OS. They were not, at least in the config I had, but binding them appropriately is no rocket surgery.
It still puzzles me why the manufacturer found it more cost effective to implement one button a physically different way than the three others, requiring a whole keyboard emulation stack, but hey, at least it works now.
So... buckle up! This way nothing else will surprise you by masquerading as
a keyboard!
--
⢀⣴⠾⠻⢶⣦⠀
⣾⠁⢠⠒⠀⣿⡁ A dumb species has no way to open a tuna can. ⢿⡄⠘⠷⠚⠋⠀ A smart species invents a can opener. ⠈⠳⣄⠀⠀⠀⠀ A master species delegates.
--- SoupGate-Win32 v1.05
* Origin: fsxNet Usenet Gateway (21:1/5)