Editor War - Differences Between VI and Emacs

Differences Between Vi and Emacs

The most important differences between vi and Emacs are presented in the following table:

vi Emacs
Keystroke execution vi editing retains each permutation of typed keys. This creates a path in the decision tree which unambiguously identifies any command. Emacs commands are key combinations for which modifier keys are held down while other keys are pressed; a command gets executed once completely typed. This still forms a decision tree of commands, but not one of individual keystrokes.
Memory usage and customizability Historically, vi is a smaller and faster program, however with less capacity for customization. Emacs takes longer to start up and requires more memory. However, it is highly customizable and includes a large number of features, as it is essentially an execution environment for a Lisp program designed for text-editing.
User environment vi was originally exclusively used inside of a text-mode console, offering no graphical user interface (GUI). Most modern vi derivatives, e.g. MacVim and gVim, include full-featured GUIs. Emacs, while also initially designed for use on a console, grew a GUI fairly early on.
Function/navigation interface vi uses distinct editing modes. Emacs uses metakey chords.

Read more about this topic:  Editor War

Famous quotes containing the word differences:

    What we have to do ... is to find a way to celebrate our diversity and debate our differences without fracturing our communities.
    Hillary Rodham Clinton (b. 1947)