>I suspect that the main reason behind the hjkl (which is very
>unnatural for me, the arrows have a much better design with the
inverted
>T at least IMHO) was that the first keyboards used to develop/use vi
>probably hadn't arrow keys, or they were very far at the right of the
>keyboard.

Pretty much so.  Early dumbterminals (think ADM-3a and similar critters)
didn't have arrow keys, but they *did* go so far as to have little arrow
marks on the keycaps themselves, underneath the letters, on -- you
guessed it -- h/j/k/l.

The reason for that is similar to subdued numbers/characters on keycaps
on laptops and the like, where there's no separate numeric keypad, so
you hit <numlock> or <Fn> or whatever your laptop has, and those keys
send the char in the subdued text instead of the char they normally
send.

Hit *control* instead, for ^H (backspace), ^J (linefeed), ^K (vertical
tab), and ^L (formfeed), and you get the cursor motions
left/down/up/right, respectively.

If you recall the old termcaps/terminfo entries for such critters, you'd
see usually the same values for cub1/kcub1, cud1/kcud1, cuu1/kcuu1, and
cuf1/kcuf1, as ^H/^J/^K/^L.

Only later with discrete arrow keys did you start getting ANSIish escape
sequences like "\[[A"/"\[[B"/"\[[C"/"\[[D".

Gawd, I feel old...

Reply via email to