I've been using these types of keyboards for a couple years now, and I find that although the enthusiast community has sort of gravitated towards <50 key layouts, trying to achieve the complex combinations often required by IDEs can be an exercise in dexterity (both physically and mentally).
For example, let's say you need to do Shift-Option-F12. First, you need to hold a modifier to bring your F key layer, possibly a separate or chorded modifier to get you to the F-keys above 10 since you only have have 10 numeric digits. Then, that needs to be compatible with both your shift modifier AND your option modifier, which with only 2 thumb keys per side it probably won't be. So, then you think, oh no worries, I'll just set up a single shortcut that does what I need, but then you end up with a profusion of shortcuts that you need to remember.
I've found that in practice, I can't really go much below 58 keys and 3 layers without requiring tap-and-hold or losing some of my less-frequently used chars (` comes to mind), so I can sympathize with the ancestor posts.
It's understandable if some people would prefer a larger layout. I wouldn't argue people should be using smaller keyboards.
It's "I don't mind moving my hand to hit the key" vs "I don't mind holding down some Fn key to hit the key". (Or with F1-F12 on Macbooks, you need to both hold down a Fn key and move your hand).
I picked up the Miryoku layout a year or two ago and the home row mods (Ctrl, alt, shift...) make all the difference. Adding a thumb key into the shortcut to hit a key on a layer doesn't take much extra mental energy and it becomes muscle memory for certain shortcuts. It's a little like playing different chords on the piano. I added some customization for Vim arrow keys and now I don't think I'll ever go back.
"a profusion of shortcuts that you need to remember" -- sure, true, but you're already talking about something esoteric like shift-option-F12. Were you remembering that in the first place?
I hate to be that guy but this line of reasoning leads to “redefine every shortcut for every app” in order to fit your keyboard. Yes, it’s possible, but cognitive overload is also a thing.
While I agree in theory, in practice I feel like there is a noticeable difference between the frequency of F1-12 and the punctuation characters OP listed. Moreover, there are not many tools to help people find layer arrangements that are actually ergonomic besides their own intuition. Layers are surprisingly complex and subtle for many reasons here are a few I can think of:
- Layer transition fatigue: If you have many layers, it can be difficult to remember which key(s) triggers them. This can be improved with time and practice. In addition, you might want to arrange the symbols on your layers to minimize the amount of layer transitions needed. For example, if you type ./ a lot if would be nice if they were on the same layer and either a roll or an alternation.
- Awkward finger patterns: if we go back to the ./ example, if for some reason you decide / must go on another layer, then you probably want / to be close to period. If you design your layer in a way where / ends up under qwerty P, then you’ll have to contort your fingers to make the ./ pattern. This gets way more complicated when you consider all the possible symbol patterns such as ->, =>, :=, </, ./, [i], [j], |>, (“, “), ):, etc…
- Unexpected layer transition same finger usage: people will sometimes naively put layer transition keys in suboptimal places. For instance, if you use right thumb for space, then I would argue it’s a bad idea to use another right thumb key for shift. The reason is because in between sentences you put a space after the previous sentence and then press shift to capitalize the next letter. If they space and shift are on the same finger then you will probably find this sequence uncomfortable. A similar logic applies for backspace. I would argue space and backspace should be on the same thumb because they are pretty much mutually exclusive. Also your space thumb is used to repeating, and backspacing often involves a lot of repeating.
Overall, I think layers do have a lot of potential to work, but I feel like there aren’t many tools to help people iron out all these subtle issues. I’ve been working on making such a tool, but testing it takes a lot of time due to the first point.
Exactly this. I would add also, do you want to accomplish by additional hand/wrist movement (access F-key row) or by additional keypresses (layer, tap-dance, etc)?
If my IDE requires me pushing SHIFT + F3, I would need now to push SHIFT+ALT+F3? How is that in any way more ergonomic? I assume split keyboards are the golden standard of ergonomic design (or I thought they should be).
I thought this was going to be a barrier for me as well, but after using a Moonlander (one of ZSA's other keyboards) for over a year now, it's not as bad. I have a layer that has F1-10 in place of 1-0, then F11 and F12 are on overflow keys.
I've found that the hotkeys I most frequently use I moved in to more convenient hotkeys/macros (for example code folding/unfolding to three common levels, debugger stepping), while others just stayed where they were.
I would say that you'd probably want to try a larger keyboard than the Voyager though if that's a concern though. I'm reticent to try such a smaller keyboard, and I found the ~70 keys of the Moonlander to be more inline with what I like.
Modifier key plus the number row gets you that trivially, and it's no different from having to hit Fn + F-key on a laptop. But even better is that if there are things you use regularly, you can map them up to a more convenient place.
I don't use Fn on laptops, that's backwards.
F1-F12 have basic functionality, when I want to play around with something less common (like changing volume, brightness) I use Fn + F key.
Same I use them constantly, but just set one of your thumb keys to shift to your functions row. You can map all the way up to F24 then! and have any other IDE specific commands in that layer as well.
I use F all over the place in VS-code and have them all mapped on my dygma raise.
The intent is "be able to press F1-F12 without having to move hands so far from home row"; it's not "I want a smaller keyboard and don't need F1-F12".