Is it better to use the Windows layout for Colemak or a custom Keyboardio layout?

I just picked up my first Model01 and decided to to try retrain my 30years of muscle memory on a keyboard and learn the Colemak layout while I’m relearning how to type on this keyboard.

I’ve seen Colemak had a layout for Windows which remaps the keys of a 101 keyboard to the Colemak layout.

What is the recommended pratice? Use a custom Model01 layout or just use the windows layout? Any advantatages of one approach over another?



I’d recommend using a custom Model01 layout, because the OS layout might put some things in positions that make sense on a full-size keyboard, but much less so on the Model01. A custom layout also opens up the possibility of spicing things up with plugins and whatnot. :slight_smile:

(Mind you, the last time I used anything else but en-us as my OS layout was in the 1990s, so the above is more of a gut feeling than real experience.)


Look out for the shift key behavior. You can’t change that from the model 01 firmware.

The fact that shift+1 is ! is controlled by the OS layout. So you might want to work with both. …

Personally, I would recommend starting out with the Colemak layout in the OS. Unlike Dvorak, Colemak only alters the 30 standard keys [A-Z;,./] that don’t change physical position in the default firmware. There is no advantage in going to a non-default firmware layout unless you have a particular need for custom plugins such as qukeys, or square brackets in the base layer, or non-default numpad behaviour - all of which is orthogonal to the choice of Colemak.


Even that is an overstatement - Colemak only changes the position of sixteen alphabetic keys and the semicolon. The same argument also applies to the baby-Colemak layouts (Workman, Norman, Asset, etc), none of whom rearrange any of the orphan keys (the ones left of 1QAZ or right of 0P;/)

I’ve been a Colemak user since 2015. There are pros and cons to each approach, but I recommend using software level remappings like AutoHotKey or the OS keyboard mappings, and then you can customize from there. The reason I say this is, especially on a laptop, it’s a pain to switch back and forth as you change keyboards or computers. If you’re using Keyboardio for all typing forever and always, then maybe go the other route.

For me, it’s nice to have a portable way to keep your keyboard working as expected. My current approach is leaving the Keyboardio QWERTY config as is, and using PortableApps AutoHotKey Colemak mapping for Windows and Karabiner for Mac. But, I also used Chrysalis to add a Colemak layer I can lock to with the any key if I ever need it - for example, when remoting into a box that I can’t set my mappings on. This gives you the best of both worlds. Also, the Windows and Mac keyboard configs won’t map Capslock to backspace on a regular keyboard. That’s not a problem on Keyboardio, but it’s super annoying on a laptop keyboard. I just keep my Karabiner and AutoHotKey configs handy on GitHub and that’s served me well.

1 Like

Congrats on the board! I also have been on Colemak around 4.5 years, also after 30 years of Qwerty. I have done both of the things you suggest! First I had Colemak as the primary layer, but currently Qwerty is my primary layer, and Colemak is on the OS. A couple points:

  • Having Colemak on the OS means that when I switch from the Model01 to the laptop’s keyboard it’s one less setting to change
  • I do keep Colemak as a secondary layer that I can toggle to if I switch computers or create new test users / Vms etc.
  • Learning was a hard 3 months! I learned Colemak on my Android using Swiftkey - this is the keyboard you have to look at! Then I practiced typing into this while not-looking-at-my-hands haha

My layers: