Emacs:
- Emacs (pronounced EE-maks and sometimes spelled “emacs” or “EMACS”)
- Emacs is one of the most versatile text editors available for Linux and UNIX-based systems.
- Emacs provides typed commands and special key combinations that let you add, delete, insert, and otherwise manipulate words, letters, lines, and other units of text. Emacs is commonly used to enter the source statements for programs.
- Editor war is the common name for the rivalry between users of the Emacs and vi (Vim) text editors.
Pros:
Extensible, more powerful than any other editor known to man, mature integration with pretty much every major free software programming tool.
Cons:
Questionable ergonomics, elisp is not easy to learn.
Vim:
- Vim is an editor to create or edit a text file.
- There are two modes in vim. One is the command mode and another is the insert mode.
- In the command mode, user can move around the file, delete text, etc.
- vim is a text editor that is upwards compatible to Vi.
- There are a lot of enhancements above Vi: multi level undo, multiple windows and buffers, syntax highlighting, command line editing, filename completion, a complete help system, visual selection, and many others.
Pros:
Good keyboard macro facility, passably good extensibility and scripting, but not as good as emacs. Vim or vi-derived editors are standard on most if not all unix or general purpose linux distros. Arguably better ergonomics.
Cons:
- Modal user interface feels strange to people used to Windows UIs.
- Emacs (derived from Editing MACRoS) was created by Richard Stallman at MIT. A popular version is called GNU Emacs. Emacs offers a much longer list of commands than the other widely-used UNIX text editor, vi and the ability to extend the interface.
- Like vi, the full capabilities of Emacs require a considerable investment in learning (or relearning if you don’t use them continually). However, a beginning set of commands makes it possible to get to work immediately.
- One or more versions of Emacs have been developed for use on Windows operating systems. A reader suggests another possible derivation for the letters in Emacs: Escape-Meta-Alt-Control-Shift – apparently referring to its use of key combination commands.
- The vi editor is a powerful tool and has a very extensive built-in manual, which you can activate using the :help command when the program is started (instead of using man or info).
- The vi confusing the beginner that is, it can operate in two modes: command mode and insert mode.
- The editor always starts in command mode. Commands move you through the text, search, replace, mark blocks and perform other editing tasks, and some of them switch the editor to insert mode.
- This means that each key has not one, but likely two meanings: it can either represent a command for the editor when in command mode, or a character that you want in a text when in insert mode.