Why not something like this: A cylinder* with 8 buttons, pushing a certain combination gets you a character, this could be unicode or some new character distribution set that’s translated into the correct input by the drivers. There could be a dial or keypad on the front that allows you to shift the starting “offset” i.e. entering a 0 offset would get you most of the English alphabet and maybe a little bit into other western sets (umlauts, etc), whereas, say, offset 256 starts you on, say, Greek, or Chinese characters. Since some (like Chinese) have so many characters more common ones would have to be moved into clusters, but the dial would be easy to reach with one thumb/finger when needed to allow for quick set shifting.
It would seem daunting at first, but I imagine you would get really fast at it. It actually reminds me a lot of playing a flute, bassoon, or other key-heavy-with-fixed-hand-position instrument. Of course, some combinations would be hard to switch between, the fingerings would have to be engineered so that these difficult switches primarily fell between letters/characters that were the most uncommon. Say, the letter “u” was (o means pressed, x means unpressed) oooxoooo (all fingers down except left hand pinky on a cylinder), “n” (think typing “un” since it’s a relative common prefix) could be oxoxooox (middle/pinky not pressed left, pinky not pressed right). Lifting two fingers just slightly and you have your next letter. Input would be on a short (ms) time delay after it detects a change in the keys pressed, to get double letters you could have a thumb key that enters the currently selected input if it detects no change, or you could quickly lift a finger and repress it before the timeout. Position “0” (all up) would be neutral and not do any input to prevent errors when you’re done typing. Common-to-many-character-set things like numbers would have to either be redefined ever x many offsets or be static, hardcoded combinations so they don’t matter. Alternatively, have a “number” character set that can be accessed by a thumb key or changing the character set dial/slider to some easy to feel-to position like the very top. Things like control and meta/alt would also be thumb keys.
People, if they wanted to, could tweak things on their local machines like input delay, “fingering charts” etc if they felt up to it.
It’s a little hard to visualize, but I think it would be an excellent keyboard for typing/coding etc. It’s not really practical for games where you need things like w, d, 1, and a free mouse hand all at once, so you’d have to stick with qwerty or those special “rearrange your own keys” gaming keyboards for that.
- It could be a board, but I was imagining an upright cylinder with eight holes you put your fingers in. Doesn’t really matter.