Hacker News new | ask | show | jobs
by crote 888 days ago
The HID protocol used by keyboards to talk to the OS doesn't support Unicode.

In fact, it doesn't even support letters: you're sending key positions instead. If you press the letter "A" on an Azerty keyboard, your keyboard will essentially send a "Q Down" event - because that "A" is placed in the "Q" position.

Getting Unicode out of that is really tricky due to half a dozen abstraction layers, most of which are unique for that OS. Mapping a specific Unicode character to a position isn't too bad (just use a custom keymap), but adding generic Unicode support is a nightmare.