Hacker Read top | best | new | newcomments | leaders | about | bookmarklet login

Move the default movement keys to the home position -- shift them right by one. Right now I have to choose between shifting my hand off the home position or my index finger doing double duty. JKL; is very comfortable to move around with.


sort by: page size:

out of interest - as hjkl are one offset from the default jkl; home row position, do you opt to use the index for both h and j or shift your hand one key over to the left?

I notice from observing other people type that there is an aversion to moving hand position, whereas the idea of moving hand position is not unfathomable to me, perhaps as I have played piano and violin. For example, I generally use middle finger to hit esc to exit escape mode. This may seem counter-intuitive and could well be thanks to the dimensions of my hand, but I am able to reach esc with middle finger without moving the wrist. That means I can hit esc and find the home row while still touch typing. Similarly, displacing my entire hand for hjkl isn't that uncomfortable and is certainly more comfortable than trying to use both h and j for h and j.


How does it require less movement? It's directly adjacent to the A key -- only the pinky needs to move, and only one key over.

To hit the key in the lower-left corner you basically have to twist your whole hand at the wrist -- not only is that more movement, it probably raises the risk of RSI to the wrist.

What am I missing?


I'm using Neo, and though I'm also used to keyboard switching, I'm very much accustomed to leave my fingers on the default position (i.e. my left index finger on qwertz [f], where the little marking is). Because of this I haven't gotten the hang of strafing for the ten levels I played and then it got very difficult to avoid.

Put your ring finger in the gap between your I and K keys. To press one or the other, you don't have to relocate it, you just roll it in one direction or the other. It's similar to the technique of hitting any of the XABY buttons on an Xbox controller with the side of your right thumb while keeping the end of your thumb on the analog stick.

And in any case, when was the last time you moved up and down at the same time?


Wait. You don't use hjkl and you also don't use the arrow keys anymore. So how would you, say, move left one character?

Most experienced vim users consider movement using the hjkl keys to be essential to the efficient use of vim. Some even go so far as to recommend unmapping the arrow keys altogether.

As someone who's used vim for about 20 years, I have to agree with them. If you don't use the hjkl keys for movement, you're almost certainly making your editing experience less efficient and more painful than it would be if you just buckled down and learned them.

There's a very good reason for keeping the most-used movement keys on the home row: you don't have to move your fingers off the home row to use them. Arrow keys and virtually all other motion keys are less efficient for this reason.

The more you have to move your hands and fingers, the less efficient your movement will be. Moving your hand back and forth to the arrow keys might not seem so much, but over time it adds up.

The truth is that becoming comfortable with the hjkl keys is no more difficult or unpleasant than playing nethack for a little while. You'll find yourself becoming an hjkl master in no time.


I have reduced a lot of unnecessary hand movement by moving the Control keys to either side of the space bar where the Alt keys normally are, and moving the Alt keys to the keys next to those where the Windows keys usually are. With this I can hit all of the modifier keys with my thumbs.

I also have CapsLock mapped to Backspace, and use the Dvorak keyboard layout. All of these combined minimize strain on my pinkies and the rest of my fingers, reduces the need for hand contortions, and lets stronger fingers do more work.


I wonder if any people remap hjkl to jkl;. Having to shift my hands one key over always annoyed me.

So move your keys?

I've remapped left hand's home row to {[]} and QWE to ?() with a modifier.


What about changing hjkl movements to jkl;? I didn't try it yet... But hjkl bothers me. My index belongs on j, for homerow touch typing, not h. Wouldn't it be an improvement? Not having to move the hand for movements. I must be missing something because everyone stays with hjkl.

1. Swap Ctrl and CapsLock (using whatever method)

2. Use Ctrl-[ instead of Esc or Ctrl-C

Now your hands can stay in perfect home-row position nearly all of the time.


Put the shift key where it belongs: under your thumb.

I remapped control to the bottom row, whichever key my thumb naturally rests on. Usually alt. Also moved \, [, ], enter, and backspace to avoid reaching for them with my right pinky. I think if your fingers start feeling even a little bit weird, you should keep remapping keys until they feel good all the time. Doesn't make sense to wait for it to get worse before taking action.

You can use home row keys JKL; as arrow keys with a thumb right alt as a modifier (or a long hold space), that beats having to move your hand to an unergonomic cluster

Ha this is so true. I wrote in a comment elsewhere in this thread that I mostly just use the movement keys hjkl with a fast key repeat. But I'm still kind of wondering whether the movement keys are actually hjkl, because I'm writing this on my phone so I can't check whether those are actually the keys I use to move around, and I haven't actually thought about it in like a decade.

I just press the control key with the part of the palm of my hand that's right below my pinky finger. That way my pinky finger always stays on the home row, and never gets tired.

I don't like to remap control, alt, escape, or caps-lock because I don't want to be hobbled when I use another computer that I don't control to type on. This method has worked well for me for decades.


One thing I noticed myself doing is moving my fingers from the home row alot. For example when type "0p, I think I am supposed to only the pinky the type the entire command, but I am using the ring finger.

Interesting about the bumps. Lately I've been rehashing some typing tutors (I learned how to type at a very young age). One of the pieces of advice I picked up was to retain your index finger on the home row when you press shift. This is actually impossible on some keyboards, but where it isn't impossible, I was surprised at how much better my typing was.

I learned on an Apple and I wonder now if having the bump on the second key has led to a few problems. I find there is a tendency for me to rotate my hand so that the fingers are no longer on the home row. One of the nice things about changing is that when I'm trying to code on the bus or train, avoiding rotating my hands keeps my elbows in and makes it possible for me to work (yes, I like working on the train :-P).

Not entirely sure what the best answer is for this.


If you use "home row modifiers" (holding down f/d/s/a or j/k/l/; acts as Shift/Ctrl/Win/Alt), then it's less reaching for ctrl.

Although I'd also recommend making Esc available on a thumb cluster.


+1 But I remapped the movement keys to j/k/l/; to avoid moving my left-index finger.
next

Legal | privacy