Remix.run Logo
Why Vim uses hjkl keys as arrow keys(catonmat.net)
9 points by speckx 2 days ago | 1 comments
ButlerianJihad 13 hours ago | parent [-]

My first semester at university (1989), I enrolled in a Pascal programming class. It was taught on AT&T 3B2 systems. We had remote access in a single lab with some kind of AT&T terminals all connected via serial link to the 2 servers (there were actually 3, but only 2 served student accounts.) The terminals were not vt100 but had some overlap with ESC sequences.

Our first assignment was to learn vi: how to navigate, edit, save and quit, etc. It was kind of exciting to me. My dad had used Wordperfect at home on DOS, and so I already had a passing familiarity with text editing. But vi was so powerful! You could make sweeping changes very, very quickly (and I had already learned how to touch-type 4 years before this.)

What's even more amazing is the Unix games I began to discover and download. Our accounts, by some academic accident, had no quotas in terms of disk or CPU resources. So I basically scraped every anon-ftp game server that I could find, and downloaded tons of games, and made them available to all classmates. I invested a lot of time and energy into "porting" them to the SVR3 environment; sometimes they wouldn't compile right away, and I had to hack the header files or Makefile.

Anyway, Ularn and nethack were real popular ones, and they coincidentally used exactly the same cursor keys as vi. Well, we got used to playing roguelike games and unwittingly, we were being trained in the modal editing methods of vi at the same time!

It's like how Minesweeper under Windows taught us how to use the mouse and right-clicks...