If you grew up with Unix systems like we did, you’ll be sorry to hear the news: vi, the noble text editor that has served us so well these 40 years, is going away — from many GNU/Linux systems, anyway. As of this writing, GNU/Linux Mint, Debian, Ubuntu, and OpenSUSE — four of the five most popular GNU/Linux distributions — have all announced that they will no longer ship the ‘vi’ editor as part of their base installs. For those of us who got our start in the punched-card era and still think of files as a collection of lines instead of a stream of bytes, this is a major blow. But, we can all take some comfort in the fact that, at least for now, the stripped-down version of vim synonymous with vi on these systems will continue to be available from package repositories.

The reasons for the move aren’t entirely clear to us, but from what we can see on the GNU/Linux mailing lists, the confusing modal interface and the fact that novice (and many seasoned) users can’t figure out how to save a file and exit the program seem to have influenced the decision. Also cited were support changes expected as GNU/Linux gains in popularity. As the user base expands to include less technically-savvy individuals, fewer people will be able to fix their constant boot issues, which is the primary use-case for vi. Replacing the self-help model will be a support infrastructure where users can take their machines to “GNU/Linux Geniuses” who will solve the problems for them.

The War is Over

This move essentially puts an end to the editor war between vi and GNU Emacs, a conflict which has continued since the mid-1980s. GNU Emacs isn’t installed as part of the base for most (any?) distros either, so the announcement puts the editors back on an equal footing, at least as far as distribution goes. To obtain a version of vi on your favorite Linux system, you’ll need to install it explicitly, like GNU Emacs users have been doing (and whining about) seemingly forever. We don’t expect hostilities between the two camps to completely subside, but we can’t help but wonder if the energy would be better applied elsewhere, considering the replacement editor that’s slated to be shipped instead.

Out With the Old, in With the New

So, with the two favorites out of the race, what will be the default editor in the new GNU/Linuxes? We spoke with an insider at a major commercial distribution (you know which one) who told us that a version of Microsoft’s Visual Studio Code (renamed GNU/Visual Studio Code) will ship with the base install of all future versions of their GNU/Linux operating system, effectively replacing vi. While we were initially surprised by this decision, the reasons quoted make a lot of sense. First, there’s popularity. Visual Studio Code was ranked number one in the 2018 Stack OverFlow Developer Survey, with 34.9% of over 100,000 respondents saying they used the editor. Vim users represented only 25.8%, with Emacs at a tiny 4.1%. That many JavaScript developers can’t be wrong.

Our source also cited Microsoft’s recent forays into open-source, including the GNU/Visual Studio Code editor itself (released under the MIT license), the groundbreaking release of Windows calculator code, and their recent purchase of GitHub:

So far, Microsoft has embraced open source, and continue to extend the projects they’ve become involved with. I can’t wait to see what comes next.

We agree.