Split keyboard tips
Split keyboards?
So you just switched to a split keyboard, you can sort of type again, now what? What are some improvements you might enjoy?
Wait, how do I know if it’s an improvement?
Try it out!
Whenever I make a change to my keyboard layout, I immediately test it with a typing tutor.
I like monkeytype, because I can change the input language to “code python”, “code haskell”, Swedish, etc.
I’ve also heard good things about TypeRacer but haven’t tried it myself.
I recommend making it easy to change your layout. Then you can explore, and undo if it’s not for you.
I am not a koala
Koalas have two thumbs, but I do not!
I blew out my left arm for a year and a half after writing code on an IBM Model M for several years of sixteen hours a day. It started with the dreaded “emacs pinky”, aka RSI from using your pinky to press control too much.
After my left arm recovered, I realized if something that hurts, stop doing that thing!
So I bought a Kinesis Advantage, moved all my modifier keys to the thumb clusters, and haven’t had the problem since.
That’s my first suggestion, if your split keyboard has thumb keys, that’s a good place for alt, ctrl, shift, hyper, super, and altgr.
Ergodox EZ and Layers
Layers are a straightforward extension of the idea that holding down shift gets you capital letters instead of lower case letters.
I wore out five Kinesis Advantage keyboards, and years later bought an early ergodox-ez.
Kinesis keyboards are large, and I got tired of carrying mine back and forth to work. The ergodox-ez was far more portable.
The ergodox had fewer keys than the kinesis, and I’d already bound all my function keys to specific uses (email, IRC, time clock, etc).
I came up with two additional “layers” and put my function keys on the second layer in place of the matching numbers. So, holding down the layer-1 key and pressing what would be the number 1 sends the key F1.
Random trivia: Did you know numbers can be lower case?
ZSA Moonlander
I also bought one of the first few Moonlander keyboards.
While it was fun configuring my ergodox by editing the C source code of the keymap, the moonlander’s ability to edit and share keyboard layouts on the web is great for exploring.
I also found it far easier to carry my moonlander in my backpack because it comes with a decent travel case.
The Moonlander was my first exposure to tap dance functionality. The Moonlander web layout editor supports four different inputs, including press and release (tap), press and release twice, press and hold, and tap and then hold.
Check out my Moonlander layout or browse many public layouts for ideas.
Layer heuristics
When do you want a layer?
Many of my friends create a custom layer for qwerty input for web games. For example, Angel has a layout with six layers that includes gaming and Italian layers.
I try to put my most commonly used keys on the primary layer, and push less frequently used keys to deeper layers. I like to have a layer for media commands like volume controls and skip to the next track. If the keyboard firmware offers mouse movement keys, I try to fit those into a layer.
I like the Huffman coding approach where rarely used keystrokes require more keypresses.
Tap Dance heuristics
I haven’t used these much, because my primary keyboards have lots of keys compared to the latest fashion.
I recently purchased a kipra, and now I really do need tap dance!
I expect to follow Angel’s approach to compress my Ergodox six key thumb clusters into fewer keys. Right now I have backspace and left shift next to each other. If you click on the bottom leftmost key you’ll see it’s backspace when tapped, and left shift when held.
Some layout changes I’ve tried
I’ve been using Dvorak for decades. I learned the modern US Dvorak, but that’s not the original Dvorak layout. I tried the original number layout (but not symbols) in their surprising order for a few weeks, but went back to Modern Dvorak because I just didn’t get much benefit. I later replaced the number key row with Programmer Dvorak and that was pleasant for awhile, but yet again, no real benefit. I then tried swapping the symbols and numbers on Modern Dvorak, but I type the numbers more often than symbols (Haskell).
All of your keyboard suggestions are far too sensible! I want CHAOS!
If your goal is to be able to type with as little hand movement as possible, there’s the DataHand, and its 3d printable clone.
If you use emacs, try markovkeyboard?
Who bribed you to write this post?
Oh right! This is my first buy a blog post and was funded by Chris.