Comment

Comment by susam

I know the image post in your comment exaggerates the Emacs input sequence for humorous effect but I got curious and decided to count the actual keystrokes for a real world common use case.

Say, we want to replace one string with another, e.g., "foo" with "bar" as it appears in your image post. So assuming that we need simple string replacement, not regex-based replacement, and also assuming that we have vanilla Vim, vanilla Emacs, no customization, and US layout keyboard, Emacs seems to be at par with Vim.

On Vim: <Shift>+; (:) <Shift>+5 (%) s/foo/bar/g <Enter> (16 key strokes)

On Emacs: <Alt>+<Shift>+, (M-<) Alt+Shift+5 (M-%) foo <Enter> bar <Enter> <Shift>+1 (!) (16 key strokes)

Now I know some of you might observe that I have not counted the initial <Esc> to escape to normal mode and the final i to enter insert mode again in Vim. That is correct, however, I find that experienced Vim users keep themselves in the normal mode most of the time. The normal mode is really the normal mode and the insert mode is a special mode that they get into for short periods of time to insert text. Also, they rarely use i to enter insert mode. Instead, they usually o, O, a, A, I, c<motion>, c<text-object>, etc. to enter insert mode. Then they return to normal mode again as soon as they are done inserting text, so I don't think it is fair to count the overhead of <Esc> and i while counting Vim key strokes.

parent susam 5 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton