Showing posts with label keyboards. Show all posts
Showing posts with label keyboards. Show all posts

Remapping keys

There are two keys on standard keyboards for which I have no use: Caps Lock and Insert. Both are intended to bring a slight convenience to a rare operation (typing in all caps or replacing fixed-length data), and both break keyboard input by entering a nonobvious mode where keys do not do what you expect. This wouldn't be a problem except that both keys are located next to frequently used ones, so it's easy to hit them by accident.

Well, not always by accident. I've remapped Caps Lock to Control on every machine I use regularly. This works great, except when I try to use someone else's machine. Then I routinely find myself typing something like C-d to delete a character, and being confused when I find the character still there, and subsequent typing in all caps. This is especially embarrassing when I do it on Windows, where C-d wouldn't have worked even if I'd used the right key.

I've also tried swapping parentheses with square brackets in my emacs (using keyboard-translate), but this is even more confusing, because it doesn't apply in other software on the same machine, let alone on others. (I've been using it for weeks and haven't gotten used to it.) And even when it works, its benefit is questionable. The square-bracket keys are far enough from the home keys that they're not terribly easy to type - maybe no easier than the regular parentheses. A number of Lispers recommend this swap, but I haven't found it helpful, even for Lisp.

I haven't remapped Insert, because it's not in as valuable a place as Caps Lock, and my home keyboard doesn't even have it. Mac keyboards use it for Help instead, which is only slightly less annoying when you hit it by mistake, and still not frequently used enough to deserve a key. Maybe it's comforting to beginners, but I suspect beginners would find an Undo key much more comforting, as long as it worked reliably. There must be many other common operations worthy of a key (although I can't think of any right now; someone help me). So do we have to waste hardware on annoyances like Caps Lock and Insert?

Learning to touch-type (finally)

Confession time: I can't touch-type. I've never bothered to learn, and when I try, I make so many mistakes that I give up and go back to visual typing. (And by the way, I mean visual typing, not hunt-and-peck. I know where the keys are; I just can't hit them reliably by touch alone.) In this I'm like most typists - touch typing is an ideal more aspired to than practiced.

But many people more productive than me highly recommend it. So today I googled up a nice typing-practice program, and I'm amazed at how fast I'm learning. My unconscious knowledge outstrips my knowledge of it, so after less than an hour of practice, I already find my fingers correctly typing things while I'm still trying to remember where the keys are. This suggests I actually touch-type more than I'm aware of, and have only a little kinesthesia to learn. Well, that and using the right fingers, and keeping my wrists straight. I should have done this years ago.

Better late than never. I touch-typed this post.

Faster than an arrow

Speaking of Emacs keys - I have lately found myself using C-n and C-p more and more often, instead of the arrow keys. These chords seem like they'd be more work, since they require pressing two keys instead of one, but the fingers don't have to move as far from home, so it's faster. In addition, I frequently use them in combination with C-a or C-e, in which case I already have a finger on Control and they only cost one additional keypress.

I don't use C-f and C-b much, possibly because I usually want to move by more than one character, so I use commands like M-f and M-b instead. When I do want to move by less than a word (e.g. to insert a missing space in the middle of a word) I usually want to do so repeatedly, so moving a hand to the arrow keys is less of a burden. I mostly use C-f and C-b on the rare occasions when I only want to move by one or two characters. There are fewer alternatives for vertical movement, so I use C-n and C-p more often.

You know you think about usability too much when...

Last night I dreamed I was hurriedly trying to type something into a cellphone. It had a clever keyboard layout, designed to minimize the number of presses for common letters at the expense of rare ones, so ETAONRISH were just one press each. Fortunately I never had to type Q.

So far, so good. There was just one little problem: it didn't match the keys. They were labeled with the standard layout, where the common letter S takes four presses. The phone worked around this problem by showing the captions on an onscreen keyboard, for the convenience of beginners like me.

Unfortunately the ones it showed belonged to a different clever layout - one that tried to reduce keystrokes by spreading them more uniformly across all twelve keys. (This doesn't make a lot of sense, but I was asleep, okay?) So I was reduced to guessing, while both keyboards helpfully misled me, and the efficient layout was for naught.

Remember those easy, carefree flying dreams? I don't have those anymore. Instead I dream about difficulties controlling my flight. This is what happens when you think about usability problems too much. You start to dream bad user interfaces.