A Short Description of vi
vi is a full-screen text editor originally written to run under Unix, but it has been cloned and imitated to run under MS-DOS, Windows, OS/2, Macintosh OS, Unix, and several other operating systems as well. vi is unusual in that it has two modes: an input mode in which text may be inserted, appended, or overwritten, and a command mode in which the user may issue searches and/or replacements of text, move around the file being edited, delete and copy text, perform file operations (read/write/save), and invoke external system commands (such as the Unix commands sort, date, and fmt).
Up and Running Fast, But Powerful
Basic editing tasks with vi (opening a file, moving around, inserting text, deleting text, saving the file) can be learned in a few minutes, but mastering this editor will take much longer since it is relatively feature-rich and it can draw upon the full power of Unix, including regular expressions, reading the output of external commands, and allowing exernal commands to operate on the text being edited, as well as macros/key mapping, and ex line editor commands.
Bizarre and Incomprehensible...
vi can seem rather bizarre, incomprehensible, and confusing to people just learning it, especially if they are used to single-mode editors such as the Aurora editor, emacs, the MS-DOS editor, Windows Notepad, Wordpad, xedit, nedit, Qedit/TSE, Multi-edit, Ultraedit, and the like. I know it took me a while to get used to the h j k l cursor keys and switching back and forth between command mode and input mode using the escape key. At some point, however, if you have the right sort of patience, eventually you stop thinking so much about the commands you are typing and just edit. At that point, you're off to the races.
...or Fast and Efficient?
vi can be a very fast and efficient editor once you get used to the way it works. I like that vi is economical of system resources (such as RAM), that it can do a lot of editing in very few keystrokes (no mouse required), that I can keep my hands on the keyboard close to a normal row typing position, that vi can edit huge files, and that vi can operate quite handily over slow modem or internet connections (which seems to be necessary more often than one would expect even with "broadband" connections) or on overloaded systems. I also like the idea that I can find vi on every Unix system I've come across (and I use at least four different Unix operating systems on three different platforms currently). I'm never left looking for emacs or nedit, which are not installed by default on most systems, nor do I need to carry around a setup file to make the editor usable.
The vi Stuff: Get To It, Already!
At this site are some references and links of interest to vi users and the curious. I've included some screen shots of several popular vi clones, too, as at least some vee-eyes now offer GUI (graphical) interfaces with pull-down menus or button bars that might be of interest to a new generation of potential vi users.
[Main] [vi Books] [vi Info Links] [vi Software Links] [vi Screen Shots]