83
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
this post was submitted on 17 Jul 2024
83 points (97.7% liked)
Ask Experienced Devs
0 readers
1 users here now
Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient
founded 1 year ago
Where editors usually have editing shortcuts, vim has an editing grammar.
So you can copy (or select, or replace, or delete, or any other editing verb) N arguments or blocks or lines or functions or any entity for which vim has an editing noun, or around or inside either of these, and you only need to remember a few such editing verbs and nouns and adjectives in order to immediately become much more effective.
It's so effective that switching back to a regular editor feels annoyingly clunky. (I guess that's why many offer vim plugins these days.)
Better: you can record entire editing sentences and replay them. Ever had to make the same change on dozens of lines? Now you can do it in seconds.
Now of course, replaying a sentence, or several sentences, is also a sentence of its own that you can replay in another file if you want.
It's neat. :)
This would be a big advantage... except multiple cursors were invented so I can easily do that without having to memorize a whole new editing language.
Multiple cursors are fantastic for certain use cases, but will not help you when each line needs a different input -- if you're swapping arguments in function calls, if you're replacing one bracket type with another around contents of arbitrary length, etc.
Mind you, if your objective here is to not learn a new thing, then you can just go ahead and do that, you don't need an excuse.
Yeah, I usually do that with regexp replacement in other editors, but sometimes it's too hard to express as a regular expression
That's just one thing the editing language does, though. There's no single feature you can point to as the smoking gun; it's all the small advantages added together that make vi worthwhile.