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)