vim is best used with the keys, that's a _text editor_. When you type, you are using the keys, not the mouse. Leave the mouse out of it, also leave the arrowkeys out of it, it just eats time from your editin. -iveqy
Check out this Wikipedia entry on Vi. It shows the keyboard layout of the terminal Bill Joy used to create Vi... in 1976. The keyboard
did not have arrow keys :) The editor is over 30 years old. All its quirks were not design virtues, they were simple necessities. See what other keys the keyboard was missing that we now take for granted.
In general, the reason you're supposed to navigate with hjkl instead of arrow keys or something more vaguely intuitive is that in those days each computer manufacturer delivered their own keyboard, whose layout and scancodes were largely incompatible with all other keyboards, and each terminal was different, so any application that was supposed to be portable or used over a remote terminal had to be restricted to the lowest common denominator of what machines of the time were capable of and would understand. Hence no "extended" keys, and even today I don't think you can use function keys or Alt combinations over telnet. Well, there is one virtue in that: you can use Vi anywhere, as long as you can telnet to a remote Unix-like shell. And Vi certainly has a powerful command set, but nothing stops programmers from implementing the same power within a modern, more usable UI framework.
Please note the review does not say Vi cannot do any of the things listed; it only says they're too hard to figure out.
According to Wikipedia, "Vi" stands for "visual". I rest my case :)