Ann Barcomb is a Research Assistant and PhD candidate at Lero, The University of Limerick, Ireland. Her research focuses on the management of episodic, or casual, volunteers in open source and builds upon her prior work comparing free software and social entrepreneurship. Before becoming a researcher, Barcomb worked as a software developer and later as a community manager at RIPE NCC. She helped organize the European Perl Hackathon 2007, Gnash Hackathon 2007, and YAPC::Europe 2001, in addition to serving on the YAPC::Europe Foundation board from 2002-2011. She has presented at OpenSym, OSS, NaMeX, FRnOG, the Dutch Perl Workshop, the Slovenian Linux Konferenca, YAPC::Europe, and OSCON.
I could have written this article as well. I gravitated toward Pine rather than Elm or Mutt because it was more straightforward, and eventually switched to Alpine. I think I've kept the same configuration for the last 20+ years. I thought I was alone in liking my rather basic email client.
It is perhaps useful to mention that l moves to the right, j moves down, k moves up, and h moves left. Any of these keys can be prefaced with a number, so 26j moves you 26 lines down. Also $ moves to the end of the line and 0 to the start. I think knowing these keys are fundamental to being able to navigate in vi.
You mentioned substitution, but you can also use regular expressions to search. :/ brings you to the start of the line containing the text, and n jumps to each place where the text occurs, in turn.
When using :q to quit, vi will not let you if you have changed something. Use :q! to force quit without saving.