Editor war

Last updated

The editor war is the rivalry between users of the Emacs and vi (now usually Vim, or more recently Neovim) text editors. The rivalry has become an enduring part of hacker culture and the free software community.

Contents

The Emacs versus vi debate was one of the original "holy wars" conducted on Usenet groups, [1] with many flame wars fought between those insisting that their editor of choice is the paragon of editing perfection, and insulting the other, since at least 1985. [2] Related battles have been fought over operating systems, programming languages, version control systems, and even source code indent style. [3] [4]

Background

Editor choice being brought up during a presentation at a technology convention 2012 SOTM Steve Coast (8091880545).jpg
Editor choice being brought up during a presentation at a technology convention

As of 2020, both Emacs and vi can lay claim to being among the longest-lived application programs of all time, [5] as well as being the two most commonly used text editors on Linux and Unix. [6] [ needs update ] Many operating systems, especially Linux and BSD derivatives, bundle multiple text editors with the operating system to cater to user demand. For example, a default installation of macOS contains ed, pico (nano before MacOS Ventura 12.3), TextEdit, and Vim. [7]

Humor

Richard Stallman appearing as St IGNU-cius, a saint in the Church of Emacs Richard Stallman - Preliminares 2013.jpg
Richard Stallman appearing as St IGNU−cius, a saint in the Church of Emacs

The Church of Emacs, [8] formed by Emacs and the GNU Project's creator Richard Stallman, is a parody religion. [9] While it refers to vi as the "editor of the beast" (vi-vi-vi being 6-6-6 in Roman numerals), it does not oppose the use of vi; rather, it calls proprietary software anathema. ("Using a free version of vi is not a sin but a penance." [10] ) The Church of Emacs has its own newsgroup, alt.religion.emacs, that has posts purporting to support this belief system.

Regarding vi's modal nature (a common point of frustration for new users) [11] some Emacs users joke that vi has two modes – "beep repeatedly" and "break everything". vi users enjoy joking that Emacs's key-sequences induce carpal tunnel syndrome, or mentioning one of many satirical expansions of the acronym EMACS, such as "Escape Meta Alt Control Shift" (a jab at Emacs's reliance on modifier keys) [12] or "Eight Megabytes And Constantly Swapping" (in a time when that was a great amount of memory) or "EMACS Makes Any Computer Slow" (a recursive acronym like those Stallman uses) [13] or "Eventually Munches All Computer Storage", in reference to Emacs's high system resource requirements. GNU EMACS has been expanded to "Generally Not Used, Except by Middle-Aged Computer Scientists" referencing its most ardent fans, and its declining usage among younger programmers compared to more graphically oriented editors such as Atom, BBEdit, Sublime Text, TextMate, Notepad++, and Visual Studio Code.[ citation needed ]

As a poke at Emacs' creeping featurism, vi advocates have been known to describe Emacs as "a great operating system, lacking only a decent editor".[ citation needed ] Emacs advocates have been known to respond that the editor is actually very good, but the operating system could use improvement (referring to Emacs' famous lack of concurrency, which has now been added [14] ).

A game among UNIX users, either to test the depth of an Emacs user's understanding of the editor or to poke fun at the complexity of Emacs, involved predicting what would happen if a user held down a modifier key (such as Ctrl or Alt ) and typed their own name. This game humor originated with [15] users of the older TECO editor, which was the implementation basis, via macros, of the original Emacs.

The Google search engine also joined in on the joke by having searches for vi resulting in the question "Did you mean: emacs" prompted at the top of the page, and searches for emacs resulting in "Did you mean: vi". [16]

In the web series A Murder at the End of the World , there is a scene referencing the editor wars where a character asks a woman if she uses Vi or Emacs. [17]

See also

Related Research Articles

<span class="mw-page-title-main">Bash (Unix shell)</span> GNU replacement for the Bourne shell

Bash, short for Bourne-Again SHell, is a shell program and command language supported by the Free Software Foundation and first developed for the GNU Project by Brian Fox. Designed as a 100% free software alternative for the Bourne shell, it was initially released in 1989. Its moniker is a play on words, referencing both its predecessor, the Bourne shell, and the concept of rebirth.

ed (software) Line-oriented text editor for Unix

ed is a line editor for Unix and Unix-like operating systems. It was one of the first parts of the Unix operating system that was developed, in August 1969. It remains part of the POSIX and Open Group standards for Unix-based operating systems, alongside the more sophisticated full-screen editor vi.

<span class="mw-page-title-main">Emacs Lisp</span> Dialect of Lisp in the Emacs text editor

Emacs Lisp is a Lisp dialect made for Emacs. It is used for implementing most of the editing functionality built into Emacs, the remainder being written in C, as is the Lisp interpreter.

<span class="mw-page-title-main">GNU</span> Free software collection

GNU is an extensive collection of free software, which can be used as an operating system or can be used in parts with other operating systems. The use of the completed GNU tools led to the family of operating systems popularly known as Linux. Most of GNU is licensed under the GNU Project's own General Public License (GPL).

<i>GNU Manifesto</i> 1985 call to action to create a free computer operating system

The GNU Manifesto is a call-to-action by Richard Stallman encouraging participation and support of the GNU Project's goal in developing the GNU free computer operating system. The GNU Manifesto was published in March 1985 in Dr. Dobb's Journal of Software Tools. It is held in high regard within the free software movement as a fundamental philosophical source.

An integrated development environment (IDE) is a software application that provides comprehensive facilities for software development. An IDE normally consists of at least a source-code editor, build automation tools, and a debugger. Some IDEs, such as IntelliJ IDEA, Eclipse and Lazarus contain the necessary compiler, interpreter or both; others, such as SharpDevelop and NetBeans, do not.

<span class="mw-page-title-main">Vim (text editor)</span> Improved version of the Vi keyboard-oriented text editor

Vim is a free and open-source, screen-based text editor program. It is an improved clone of Bill Joy's vi. Vim's author, Bram Moolenaar, derived Vim from a port of the Stevie editor for Amiga and released a version to the public in 1991. Vim is designed for use both from a command-line interface and as a standalone application in a graphical user interface. Since its release for the Amiga, cross-platform development has made it available on many other systems. In 2018, it was voted the most popular editor amongst Linux Journal readers; in 2015 the Stack Overflow developer survey found it to be the third most popular text editor, and in 2019 the fifth most popular development environment.

<span class="mw-page-title-main">XEmacs</span>

XEmacs is a graphical- and console-based text editor which runs on almost any Unix-like operating system as well as Microsoft Windows. XEmacs is a fork, based on a version of GNU Emacs from the late 1980s. Any user can download, use, and modify XEmacs as free software available under the GNU General Public License version 2 or any later version.

A recursive acronym is an acronym that refers to itself, and appears most frequently in computer programming. The term was first used in print in 1979 in Douglas Hofstadter's book Gödel, Escher, Bach: An Eternal Golden Braid, in which Hofstadter invents the acronym GOD, meaning "GOD Over Djinn", to help explain infinite series, and describes it as a recursive acronym. Other references followed, however the concept was used as early as 1968 in John Brunner's science fiction novel Stand on Zanzibar. In the story, the acronym EPT later morphed into "Eptification for Particular Task".

<span class="mw-page-title-main">GNU Project</span> Free software project

The GNU Project is a free software, mass collaboration project announced by Richard Stallman on September 27, 1983. Its goal is to give computer users freedom and control in their use of their computers and computing devices by collaboratively developing and publishing software that gives everyone the rights to freely run the software, copy and distribute it, study it, and modify it. GNU software grants these rights in its license.

Incompatible Timesharing System (ITS) is a time-sharing operating system developed principally by the MIT Artificial Intelligence Laboratory, with help from Project MAC. The name is the jocular complement of the MIT Compatible Time-Sharing System (CTSS).

<i>Dunnet</i> (video game) 1982 video game

Dunnet is a surreal, cyberpunk text adventure written by Ron Schnell, based on a game he wrote in 1982. The name is derived from the first three letters of dungeon and the last three letters of ARPANET. It was first written in Maclisp for the DECSYSTEM-20, then ported to Emacs Lisp in 1992. Since 1994 the game has shipped with GNU Emacs; it also has been included with XEmacs.

This article provides basic comparisons for notable text editors. More feature details for text editors are available from the Category of text editor features and from the individual products' articles. This article may not be up-to-date or necessarily all-inclusive.

In computing, minimalism refers to the application of minimalist philosophies and principles in the design and use of hardware and software. Minimalism, in this sense, means designing systems that use the least hardware and software resources possible.

<span class="mw-page-title-main">Richard Stallman</span> American free software activist and GNU Project founder (born 1953)

Richard Matthew Stallman, also known by his initials, rms, is an American free software movement activist and programmer. He campaigns for software to be distributed in such a manner that its users have the freedom to use, study, distribute, and modify that software. Software which ensures these freedoms is termed free software. Stallman launched the GNU Project, founded the Free Software Foundation (FSF) in October 1985, developed the GNU Compiler Collection and GNU Emacs, and wrote all versions of the GNU General Public License.

EINE and ZWEI are two discontinued Emacs-like text editors developed by Daniel Weinreb and Mike McMahon for Lisp machines in the 1970s and 1980s.

<span class="mw-page-title-main">GNU Emacs</span> GNU version of the Emacs text editor

GNU Emacs is a text editor and suite of free software tools. Its development began in 1984 by GNU Project founder Richard Stallman, based on the Emacs editor developed for Unix operating systems. GNU Emacs has been a central component of the GNU project and a flagship project of the free software movement.

Emacs, originally named EMACS, is a family of text editors that are characterized by their extensibility. The manual for the most widely used variant, GNU Emacs, describes it as "the extensible, customizable, self-documenting, real-time display editor". Development of the first Emacs began in the mid-1970s, and work on GNU Emacs, directly descended from the original, is ongoing; its latest version is 29.4 , released June 2024.

References

  1. "Holy War (Hacker Jargon)". Archived from the original on 2012-04-02. Retrieved 2016-11-30.
  2. "EMACS vs. vi: The endless geek 'holy war'". Archived from the original on 2016-11-30. Retrieved 2016-11-30.
  3. "Just Let Me Code". Archived from the original on 2015-05-01. Retrieved 2015-04-24.
  4. "Why Coding Style Matters". Archived from the original on 2015-05-03. Retrieved 2015-04-24.
  5. Auerbach, David (9 May 2014). "The Oldest Rivalry in Computing". Slate . two rival programs can stake a claim to being among the longest-lived applications of all time. Both programs are about to enter their fifth decades. Both programs are text editors, for inputting and editing code, data files, raw HTML Web pages, and anything else. And they are mortal enemies.
  6. "Choosing an Editor". these two editors express sharply contrasting design philosophies, but both are extremely popular and command great loyalty from identifiable core user populations. Surveys of Unix programmers consistently indicate about a 50/50 split between them, with all other editors barely registering.
  7. "Ed, man! !man ed". Gnu.org. Retrieved 1 December 2014.
  8. "Rules, Sins, Virtues, Gods and more of The Church of Emacs". Gnu.org. Retrieved 1 December 2014.
  9. "Saint IGNUcius - Richard Stallman". Stallman.org. Archived from the original on 22 November 2014. Retrieved 1 December 2014.
  10. "The unabridged selective transcript of Richard M Stallman's talk at the ANU". Linuxhelp.blogspot.com. Archived from the original on 4 October 2011. Retrieved 1 December 2014.
  11. "vi (Hacker Jargon)".
  12. "Some funny acronym expansions of Emacs". Gnu.org. Archived from the original on February 16, 2021. Retrieved 1 December 2014.
  13. Rösler, Wolfram. "The Unix Acronym List". Archived from the original on February 16, 2021. Retrieved March 4, 2021.
  14. "Concurrency has landed (was: Please test the merge of the concurrency br". lists.gnu.org. Retrieved 2020-12-08.
  15. "Real Programmers Don't Use PASCAL". Datamation: 263–265. July 1983.
  16. "Google suggest vi for Emacs and Emacs for vi | Hacker News". Hacker News. Retrieved 2022-04-07.
  17. "A Murder at the End of the World: Are you Vi or Emacs?". xenodium.com. Retrieved 2023-12-26.