> The best developers and engineers I’ve known all used Neovim. Coincidence?

Generally I rather advise we not do this!! This is a baiting question & one built around superficial narrow-dimensional assessments of "best". But sure, Friday, I've got summer hours: why not write a little homage to what I think is compelling & makes vim such a life-long joy to ongoingly immerse myself into, let's talk some about why I think vim makes some users feel unmatchedly free in a way they would never put down:

Vim's origins as the most user-hostile text-editor known to man (ed) is an interesting origin story. Ed excelled at automation, at writing little scripts to modify programs, in a non-interactive fashion.

This excellence as an automated text editing system stems, in my view, from Ed/Vim's notion of Text Objects, ed/vim's way of telling the editor about where you want to go/what you want to select in a file. The editor as a bunch of buffers (opened files), named registers (which is basically a 1-dimensional (many points) rather than 0-dimensional (point) clipboards), text-objects that can select spots in buffers ("lines 4-7", "the first two characters of this line"), and commands that can be run on text-objects is an incredibly powerful set of general purpose abstractions for doing any variety of text processing task, and there's a nice break down of responsibilities for what does what in this system.

The shake out is cool. Macros in this system are nothing but a stream of commands dropped into a register, with the ability to replay that stream: it basically didn't require adding anything to the existing system to get macros in vim, because vim was already text-driven enough by it's nature.

Text-objects[1] deserve some special mention as a standout component of this system. They are an incredible leap, giving us huge expressivity when we want to cite or reference some part of the screen.

I've always called vim "spellcasting on the fly", as in the ability to combine a bunch of ad-hoc text-objects & commands , but the irony is that it's origin, ed, while yes sometimes used for interactive editing, was quickly primarily used for automation, for rote processing. It's about building a sophisticated model of being able to reference a spot in a document, possibly as the document changes around you over time, & doing certain things. The rote-based/automated use of ed is so core to vim's magic: the power of text-objects to cite specific things on the page, in a endless variety of ways, and then to issue modifications & updates to these powerful text-object's you've named is a wonderful combination of powers, for both rote/automated processing, and on-the-fly/interactive processing.

Vim is far & away the most interesting model of text-editing there is. There are countless editors out there, with wonderful features, and great integration, but by george you just cannot beat (rather, we have not beat) the power of having a sophisticated powerful expressive model for what text is, and how to get to parts in the text, that vim brings. If you want a way to edit text that let's your brain be free to express how to move through & talk about text, that has powerful scripting to let you build & extend your palette of commands, (neo)vim is unmatched.

Epistemic status: 0.2, unresearched, probably a lot of disambiguation/clarifying needed, some liberties taken with the timeline of when exactly what happened.

[1] https://blog.carbonfive.com/vim-text-objects-the-definitive-...