by Linda Lamb, Arnold Robbins
ISBN: 1565924266
Buy from O’Reilly
Found in 3 comments on Hacker News
chongli · 2025-04-24 · Original thread
Yes, vim is not intuitive. It doesn’t teach itself to you. It takes hard work. I bought the O’Reilly vi/vim book [1] and read it cover to cover. I practiced a lot of things and was very deliberate about it.

To me, learning vim is like learning a musical instrument. You’re not going to get there without committing to it. For many people that’s just not going to happen: they have neither the time nor the inclination/energy to do it. That’s totally fine! There are loads of other tools for people to use and they get by just fine without vim!

I think my main complaint is that there aren’t a few more tools like vim. Almost all software is designed for people to be able to pick up casually and be able to get work done at a passable level of productivity without ever reaching mastery and flow state. Tools like that (easy to use but with no real incentive for mastery) are deeply unsatisfying to me for a lot of reasons.

I guess what I’m saying here is really just a restatement of “Worse is better” [2].

[1] https://www.oreilly.com/library/view/learning-the-vi/1565924...

[2] https://en.wikipedia.org/wiki/Worse_is_better

chongli · 2020-09-06 · Original thread
because it's simply satisfying

I think there’s more to it than that. Yes, it can be very satisfying to tinker with one’s tools rather than getting work done. But that doesn’t explain someone like me who took the time to learn vi (not vim) rather than using a basic text editor like nano or Notepad or TextEdit.

So why would I take the time to learn vi? I don’t tinker with it (beyond adjusting a few basic settings like autoindent, line numbers, incremental search, etc). It certainly took me a long time to get very proficient with vi. It’s also the case that any editing task I can do with vi can be done in any other text editor (they’re all “text equivalent”).

The answer is that vi, more than any other editing method, removes friction from the editing process. Having used it for a long time, I’ve built up muscle memory that allows me to rapidly jump around files and make precise edits. It also lets me easily automate repetitive editing tasks with its ex commands, macros, and of course the humble ‘.’ command. In the case of more elaborate tasks such as paragraph formatting, table formatting, or inserting line numbers into the text, vi lets me easily pipe motions, ranges, or buffers through shell commands.

So why doesn’t everyone use vi? Well that’s specific to personal taste. Some people don’t get as frustrated by friction in the editing process as I do. Maybe John Carmack doesn’t mind reaching over to grab the mouse in order to move the editing cursor somewhere else, or to select text for copy and paste. I don’t know what his editing environment and workflow look like. Perhaps he uses some other editor like vi but with the default configuration.

I guess there’s one more piece to clear up and that’s the question of whether or not I qualify as a “power editor user”. I think I do. I don’t tinker with my editor to the incredible extent that some others do, for sure. I used to tinker and found it a deep rabbit hole of distraction which inevitably led me to a slow and complicated environment (highly customized vim) that really didn’t do anything fundamentally faster/better than I could already do in plain vi. Having said that, I think my experience with vi (including having purchased and read O’Reilly’s book on the topic [1]) has helped me to master its commands far more thoroughly than a typical vim user. So I think that qualifies me as a power editor user. Others may disagree.

[1] https://www.oreilly.com/library/view/learning-the-vi/1565924...

Anthony-G · 2017-03-19 · Original thread
I’m always surprised at the number of people who recommend mapping `,` as their Leader key; it’s almost as useful as its counterpart, `;`. I suspect that such people never learned vanilla Vi and use `f`, `t` and related line movement commands.

When I learned Vim, I started with the `vimtutor` tutorial. At the end of the tutorial, it suggests Learning the Vi Editor - by Linda Lamb (O’Reilly)[1] for further reading. I found this book to be excellent for providing a solid grounding on Vi – and its descendants such as Vim. For a while, I constrained myself to using Vim in Vi-compatibilty mode before using the many wonderful features provided by Vim.

I try to keep my vimrc as lean as possible so that I’m not reliant on having it available (even though I have it in a Git repository on my VPS) and it’s only in the last couple of years that I’ve started adding plugins to it (Syntastic and Unicycle).

[1] http://shop.oreilly.com/product/9781565924260.do