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:
“The differences between revolution in art and revolution in politics are enormous.... Revolution in art lies not in the will to destroy but in the revelation of what has already been destroyed. Art kills only the dead.”
—Harold Rosenberg (19061978)