Vim

§ Background

I started programming with vim in 2017, I’m still a bit new to the party.

But it’s a great party, and it might be an especially good one to join late.

My transition:

It took me about 1.52 years to get to the final stage. It’s worth it!

§ Today

Today (2022-12-06), my workhorse is a self-compiled version of vim 9.0 with a few key plugins:

The full dot-file lives here here

§ Hacks

Ideas that I recommend experimenting with:

§ Motivation (Retroactive Justification)

Vim has been around for 30 years, and it is still getting better every year.

Betting on Vim being a competitive text editor in 2050 isn’t too far removed from betting on Linux being a competitive kernel, or PostgreSQL being a competitive RDBMS in 2050.

It’s a “Boring” tool: it’s free, it’ll always be available to compile yourself.

Basically, there’s no shiny rug to be pulled here. It’s a rock. It might not be the shiniest or sharpest rock on any given day, but it’ll be here until I retire.


  1. The decisive features to replicate were (1) search for filename (2) regex on file content (3) go to definition.↩︎

  2. (You can probably do it in less time, if you care to: my pace was leisurely)↩︎

  3. This website is little more than markdown files, pandoc, a 10-line makefile, and some janky bash scripts shipping generated files to an S3 bucket. pandoc gets you 100% of the way there 80% of the time (i.e. writing term papers, doing homework, design docs) and 80% of the way there 20% of the time (i.e. writing a website).↩︎