★ Where Vim came from or why I prefer Vim

 — 2 minutes read

I love this kind of stories: Putting today’s tools and techniques into historical context. Sinclair Target gives a brief history of Vim and concludes:

In 2006, Vim was voted the most popular editor among Linux Journal readers. Today, according to Stack Overflow’s 2018 Developer Survey, Vim is the most popular text-mode (i.e. terminal emulator) editor, used by 25.8% of all software developers (and 40% of Sysadmin/DevOps people). For a while, during the late 1980s and throughout the 1990s, programmers waged the “Editor Wars,” which pitted Emacs users against vi (and eventually Vim) users. While Emacs certainly still has a following, some people think that the Editor Wars are over and that Vim won.16 The 2018 Stack Overflow Developer Survey suggests that this is true; only 4.1% of respondents used Emacs.

In my opinion an editor is one of the most important applications; maybe even the most important. It’s one of the primary ways you interact with computers. The better you know how to effectively operate “your” editor, the more efficient you interact with computers.

I’m using Vim for almost forever. What I like the most about Vim is that its main focus is on how to manipulate text efficiently. No matter if in a terminal or in GUI, Vim can be completely operated using the keyboard. Moving the cursor, jumping to a location where you want to edit, as well as selecting and mangling text is at the heart of Vim. On top of the that, the whole editor is programmable in a way that text manipulation can be automated quickly with a minimum of friction. This way of engaging with text, may it be source code or just regular text, are superior to any other editor I have used.

I do understand that with every new generation of computer engineers, there is this drive to re-invent the wheel. Right now Atom and Visual Studio Code are the “hot shit”. They make it seem like it were almost impossible to do, for example, JavaScript development with other editors. And while I can see value in these editors, they always fail regarding the basic tasks an editor has to fulfill: Mangling text! That’s why all these editors sooner or later grow various Vim keyboard shortcuts plugins, because people miss Vim’s way to edit text. But these plugins always fall short implanting Vim’s way to do things into editors following completely other paradigms.

In the end, every editor and of course every IDE has to be judged by the means it offers to manipulate text. And there’s yet to come a serious contender to Vim1.

  1. I know this is too harsh. I used to use Emacs for some years and it’s similar capable, but I ended up with Vim eventually and that’s a topic for another note.