The T-34 keyboard layout

The T-34/1 keyboard layout

This is part 3 of the The T-34 keyboard layout series.
See this post for a full reference of how the layout looks at the moment.

This is the revision of the T-34 keyboard layout that I use as my primary driver. I’ve used this particular version without any major changes for almost 3 months, so I’d say it’s a good improvement over the last revision.

There are two large changes from T-34/0: swapping o and Repeat and preferring modifiers on combos over callum-style mods.

Swap O and Repeat

I do like the Repeat key, and although I tried to find a good place for it, having it on the same finger as a, ( and . is not ideal. Even though aa and (( aren’t common, having a follow a double consonant—such as in the Swedish word falla (to fall)—is.

So I tried to swap o and Repeat, placing o on the top row and Repeat on the home row, but on the little finger:

Base layer

Because I don’t press . with the pinky, Repeat is only shared with a single key: _, which is great!

Of course, there are some trade-offs with it:

  1. When I code and type names like __MODULE__ or call_fun, I sometimes have SFB with the pinky (which is very uncomfortable). Adding a long-press to _ for __ helps a little.

    You might wonder then why I don’t swap , and _? Two reasons:

    • , is much more common than _, and I would instead get SFB from things like fall,, which is not a good trade-off.
    • On my Swedish layer, _ is changed to ö, but I still want , when I type Swedish so ö would get a very weird position.
  2. Repeat is still on the top row on the numbers layer, which breaks symmetry and hurts learning.

  3. My right pinky is by far my weakest finger, and sometimes I want to press Repeat a lot of time in succession (to repeat Ctrl-n for instance).

  4. Moving o away from the home row is unfortunate as it is one of the most common keys. It’s not the end of the world though as Repeat is also quite common, the ao bigram isn’t that problematic, and rolling io is still okay. It also makes the ou roll great.

But all-in-all, after 3 months of feeling it out, I think this change is a large improvement.

Modifiers

Another thing I’ve been slightly annoyed with is mods. I’ve been using callum-style mods, where you essentially press the inner thumb key and then a mod on the home-row. There are no timings here, so you can tap them as quickly as you can.

This does feel great timing wise, but for me the tucking of the thumb to reach the inner thumb key feels awkward and uncomfortable. Especially for my right thumb, where I’ve been having pain issues for the last year or so.

(And when I say inner thumb keys, I mean SHRT RSYM and MOD LSYM, not Space and E which are super comfortable.)

Modifiers on combos

So I started thinking of alternatives, and as I have a hard-on for combos and I use them everywhere, why not place mods on combos?

I did use a keylog when I started creating the layout, but it didn’t tell me much modifier wise; Shift, Ctrl and Gui all had about the same amount of usage, and for some reason Alt was never registered. Instead, I used my dotfiles and used the force felt out a modifier ranking:

  1. Ctrl. Even though I use Vim, where you prefer j and k over Ctrl-n and Ctrl-p, I do have a lot of Ctrl keybindings I use on a daily basis.

  2. Gui. I use Gui as my window manager prefix (to change windows, workspaces, open a terminal etc). A dedicated mod key isn’t as important as I have dedicated navigation layers, but still.

  3. Ctrl + Shift. Although I’ve tried to reduce other key combinations, I still use it occasionally (copy/paste from terminal for instance). This really isn’t required, but it’s a small quality of life.

    (Confession time: as I’m writing this post I realize that my Ctrl + Shift implementation is completely broken and has never even worked. Guess it wasn’t so important after all.)

  4. While Shift was (slightly) the most used modifier in my keylog, I’ve moved on to auto shift so it’s not at all important. There’s still some usage for it, for instance to Shift + mouse select in file browsers, so it’s good to have especially on the left side.

  5. Everything else. I don’t use Alt in any Vim command, but it still needs to be available (to open the browser menu for instance). Ideally I’d like to freely combine mods in weird ways if some program requires it.

I already have a lot of combos, so it was a bit of a struggle to find good positions, but here’s what I ended up with:

The Ctrl combo is slightly awkward with the home/bottom split, but it’s not too bad. Maybe it would be better as a home-row combo, but I’m very happy with the combos I have there…

Other mod combinations

I still have the same modifier setup on the right-hand side, allowing me to easily make whatever modifier combination I need:

Mods & symbols

Common shortcuts

With mods out of the way, we can now have a shortcut layer on the left side:

Shortcuts & symbols

The idea is to have the common shortcuts reachable with the left hand so I can use mouse-required software conveniently. I only really need the keys that are on the left-side in qwerty and on the right side in my layout (w, e, a and x), but I added others as well to make them slightly easier.

Am I thrilled about the layout of the shortcuts? No, but it has worked well enough for it’s purpose.

As for Repeat, it takes the same place on the pinky as on the base layer, and ^ takes the top row as the old combo location has been taken by a modifier.

Future experiments

While I haven’t made any changes to the layout for a while, I’ve been keeping notes of ideas I get of or things that annoys me. And here are the big things I’d like to try when I have the time and energy to play with:

If you’re interested, the QMK code is on GitHub. But beware, there be dragons.

This is part 3 of the The T-34 keyboard layout series.
Read the next part