Michael Buckley

Hands

There are two things that became obvious while attempting NanoWriMo in 2020. First, that procrastination and global crisis are the most intimate of lovers and, second, my hands are no longer capable of typing at a computer like they once were.

As some of you may know, I have Muscular Dystrophy, which is a muscle weakening condition. What this means is, among myriad other things, my hands have been slowly worsening over time. Think of how your hands look when holding a gamepad, now take the pad away and imagine you can’t straighten your fingers out. Yep.

Over the last few years, I’ve gone from increasingly frequent typos—my twitter bio is now simply a warning of their presence—to actual pain. Sustained typing, and particularly chording, leads to cramping and pain in my fingers and across the knuckles. Because of this increasing pain, I had to ditch the computer partway through the first week of Nano and ended up tapping out the rest of the month’s word count on my phone. This had its own set of ergonomic problems. I got the 10,000 words I had planned. But something had to change.

Chords

The first thing I looked into was alternative keyboard layouts. Perhaps there would be something more suitable to my circumstances than QWERTY. The Mirror Layout looked interesting but is built around chording capslock with your pinky: in fact, more chords with your worst finger. More well known alternative layouts like Colemak and Dvorak focus on touch typing, which I can’t do, and spread keys more evenly across both hands. Dvorak does have a modified left–hand–only version supposedly designed for those with hand injuries. Unfortunately, none of these reduce the amount of chords. This, along with the cognitive load of learning a different layout, made this route a dead end.

The stretching motion required to perform chords—especially those that include letters towards the centre of the keyboard—is the most fatiguing on my fingers so I want to avoid it as much as possible. Using the alt key to pull up a menu and arrowing around is certainly doable but it’s slow and pushes me towards using the mouse. What I really want is what my phone does. Shifting on the iOS keyboard is a toggle. But not just a toggle, one that auto-offs. When you hit shift it toggles on and waits for the next input, capitalises it, and turns shift off. Turns out Windows has a version of this in the form of StickyKeys. I say has in the sense that it’s a feature that exists. Unfortunately, I have never come across a more bug-riddled piece of software. What’s supposed to happen is StickyKeys turns the modifier keys (Alt, Control, Shift etc) into toggles so instead of pressing control + v to paste you press control then v. And it does. Then it suddenly decides not to. Or it works two out of three times. Or after restarting, one out of seven. Or sometimes the process would just die. What I’m saying is it sucks. I’m not sure if this is specific to my setup or not, but after a couple of frustrating days wrestling with it I gave up and made my own. It’s a quick and dirty script but it seems to serve my purposes.

Keyboard

My current keyboard is a fat old Corsair mechanical. I’ve had it for years and I love it. But my fingers no longer do. So I’ve been looking into other mechanicals in smaller sizes and while both 60% and 40% models would occupy less space on my desk they are still pretty heavy and they make up for their lack of keys with either layers or functions, in other words more chords. Like with the keyboard layouts, the benefits they may bring over my current setup are most likely eroded by new negatives. For now I’ve decided to swap out the Corsair with a generic plastic ‘board I found in a drawer. It has flat chiclet laptop-style keys with a low travel distance. I’m hoping it will put less stress on my fingers.

Vim

While researching keyboard layouts and remapping I came across Modern Space Cadet by Steve Losh. In the post, Losh details how he went about creating a custom keymap. It’s long but well worth your time. And while Losh’s focus is programming, typing is typing and he has ideas there that I can steal. But the real reason I mention the post is because it acted, like many posts do, as a hypertext bread crumb trail and led to another of Losh’s posts on his return to the text editor Vim.

I had heard of Vim, of course, but I had written it off as too nerdy (yes, even for me), too esoteric, and the fetish for the home row made my hands sad. Vim is seen as an text editor only for programmers who can touch type and there seemed, to me at least, to be a air of elitism around it and some of its users. But as with all things, you should not judge an editor by its community.

I don’t know if Losh’s post was better written than others I had read or I just found it at the right time, but I got what Vim could do for me. By focusing first and foremost on “you can keep your hands on the home row yay” I think a lot of Vim fans are missing an substantial audience. For mine, coming to it new, Vim’s best feature is its deep customisation. This is doubly true for users with specific physical needs. Almost every key can be made to do something else or many things else. Coupled with minimal chording out of the box, Vim could well be what I’ve been looking for.

Vim reduces the reliance on chords by thinking of editing like writing sentences. For Losh, editing with Vim is like a language:

You have “verbs” and “nouns”. For example: the “change” command (c) would be a verb and the “word” item (w) is a noun. You can combine them to form sentences. The wonderful part about this is that whenever you learn a new verb (like “delete” (d)) you can immediately apply it to all the nouns you know

So the sentence “delete four words” becomes d4w. Want to change everything inside a set of parentheses? ci(. Of course this is the very tip of the Titanic-sized iceberg of what Vim can do.

Happily, if you’re writing fiction, as I am, you can get by without filling your head with key combos. You can get by with just: delete, yank (copy), change, and put (paste). In this first week I’ve relied on these four commands (as well as some help from the beginner guide here and things have been relatively smooth. Besides, you use all these commands in normal mode (think editing mode). Actual writing happens in insert mode and that remains the basically same as any other editor. Fans of modal editors like Vim believe splitting writing and editing into two separate tasks increases focus. At the very least, eliminating the stop–start of editing in situ should reduce the stress on my hands.

Yes, it sounds like Vim replaces stretching your hand into painful positions with a lot more key presses. And while I’ve found that to be true in my testing so far, that’s before I learned about the leader key. Vim’s leader key work like iOS’s shift toggle BUT can be made to do anything vim can with two keys. Want to find–and–replace cat for dog and then indent only the lines without the word fleas? You can. And you can map it to simply leader + c. Further, you can choose which key is the leader. I’ve set it as space so I can easily reach every other key to perform my custom mappings.

What Now?

My plan now is to switch out the keyboards and attempt to use Vim full time for day–to–day writing, customising things when and if I need as I go. I’ll come back in a month or so with an update on whether my hands are better, worse, or the same, and if this has been an exercise in yak shaving.

Current Status

Cat: Sleeping

Writing: Ongoing

Hands: Despondent