"H.Merijn Brand"
Emacs would have been a better counter-example. ed, ex and vi were standard, and they just had one single function: edit a file. (g)vim, elvis and all other vi clones do not change that: they are just editors. emacs however adds a complete infrastructure to integrate various other activities into editing. Just like netbeans, idea, and eclipse. That is why I try to stay away from these as long as possible.
I take objection to how you characterize Emacs. You simply don't understand what Emacs is. At it's heart, Emacs is simply a lisp interpreter specializing in manipulating text streams. The so called "editor" itself is actually a collection of programs written in elisp (99% of Emacs is written in elisp with a few primitive functions, that speed is critical, written in C). Thus one should think of Emacs as a lisp machine/vm. All of Emacs's functions are just lisp programs that changes the state of that vm. If you don't want some additional functions, just don't load the corresponding lisp files. Charles -- "Linux: the operating system with a CLUE... Command Line User Environment". (seen in a posting in comp.software.testing)