Chorded keybindings to take advantage of rollover?


#1

I would like to write a package for Braille input. Characters are usually created using a 6-key chord keyboard, which is represented on a normal keyboard as the ‘sdfjkl’ keys – each key represents a dot. For example, pressing ‘sdfjkl’ all at the same time would produce ⠿, pressing ‘f’ would produce the letter ⠁ (a), pressing ‘sfk’ all at the same time would produce the letter ⠕ (o), etc.

Is there a way to capture these simultaneous keystrokes (rollover) and bind them so one character is produced? I know that the vim package takes advantage of multiple character keybindings, but I’m wondering how to capture multiple characters pressed at the same time.


#2

Did you ever get a response?
I am having issues on Ubuntu where the cmd modifier key is heavily used by the desktop.
Even 3-key chorded input would be useful.


#3

No response. :frowning:


#4

You would have to grab the keys at a low level before atom got the events. I would guess this is impossible if using the normal linux core driver but I could be wrong.


#5

There was a PR that addressed issues with the Dvorak-Qwerty layout on OS X. It would probably be the best source of ideas on how to modify how Atom reacts to pressed keys at a low level.