Now the downside to using a chorded keyboard on a modern operating system is that you frequently need to use a “chord”, even with a regular keyboard (CTRL+C, ALT+TAB, CTRL+ALT+DEL, etc). At first I thought to solve this by having the keyboard keep track of what key is being pressed, and pausing if it recognizes one that is part of a known chord, releasing if you move on to a character combo not generally recognized. So if you hit CTRL, then it stores that, if you then hit ESC, it sends both key strokes separately, but if instead you follow it with ALT it waits for the next stroke, storing the two previous ones. This is all well and good, but common chords in the programs I run include ALT+DEL, CTRL+ALT, and others that consist of portions of longer chords.
I could set aside one key to simply indicate that the chords entered need to be held. So if Key 1 was pressed and held, the keyboard would store the string of chords you enter, releasing them to the computer when Key 1 was released. Aside from complicating things, this also creates a problem by requiring a key that can’t be used as part of any other chord, diminishing the number of chords the keyboard is capable of using.
Instead, I’m thinking to simply assign known key combinations to the chord map, so that a single chord would handle each of them. Might mean I’ll miss some chords and have to rebuild the chord map after I finish, but I’m okay with that.