From Academic Kids

Template:Title Template:Alternateuses

Missing image
The minimalist interface of vi

vi is a screen-oriented text editor computer program written by Bill Joy in 1976 for an early BSD release. The name comes from the shortest unambiguous abbreviation for the command visual in ex. The command in question switches the line editor ex to visual mode.

Typically, as a matter of convenience, the same program will start up in vi or ex mode, depending on the name with which it is started. "vi" is an initialism; pronounced letter by letter as (in IPA), but generally not as a word, as , and never like the Roman numeral VI (i.e., "six").

vi can frustrate new users, because it is a modal editor. A modal editor (or any modal program) assigns different meanings to buttons or keystrokes depending on which editing mode is active. The two major modes of editing in vi are "insert" and "command" mode. In insert mode, text typed is inserted into the document normally. Pressing the escape key while in insert mode will switch the editor to command mode. When in command mode, each letter corresponds to a cursor movement or editing function (for example, "j" to move down a line, "k" to move up a line, "x" to delete a character, and "i" to return to insert mode). Keys pressed while in command mode are not inserted into the text, which is probably the most common cause for confusion among new users.

An advantage of having a separate command mode is that multiple editing operations can be performed in a row with very simple keystrokes, without having to hold down the <Alt>, <Ctrl>, or other special modifier keys. The more complicated editing operations are strung together from simple primitives (for example, "dw" to delete a word, or "c2fa" to change text from the cursor until finding the second "a"). For experienced users, this can lead to faster work. It also means that the user's hands never need to leave the keyboard.

Early versions of vi did not give any indication as to which mode they were in, and it is typical of users to simply press the Escape key to ensure that the editor is in command mode (it will beep if already in command mode). Current versions of vi indicate the mode on the status line or graphically. Graphical implementations of vi (for example, gvim) also fully support the use of a mouse and menus to access editing commands.

vi became the de facto standard Unix editor and a nearly undisputed hacker favorite outside of MIT until the rise of Emacs after about 1984. As of 2002 either vi or one of its clones can still be found on nearly all installations of Unix (the Single UNIX Specification specifies vi, so any system conforming to the Single UNIX Specification will have vi).

It is still widely used by users of Unix variants (about half the respondents in a 1991 USENET poll preferred it). It starts up faster than the bulkier versions of Emacs and uses less memory. Consequently, even some Emacs fans will resort to it as a mail editor and for small editing jobs. When a "rescue floppy" is being built for restores following a hard drive crash, vi is often the editor chosen because it is compact enough to fit on a floppy, and because almost anyone performing rescue operations will be able to use it.

vi and Emacs are classically the two sides in the editor wars.


vi trivia

vi was written in Evans Hall ( at the University of California, Berkeley.

vi derivatives and clones

Missing image
The startup screen of vi clone vim
  • vi is a port of the classic BSD vi 3.7 to modern Unix systems. It uses ed as a codebase, which is BSD-style free since January 2002. [1] (
  • nvi is an implementation of the ex/vi text editor originally distributed as part of the Fourth Berkeley Software Distribution.(4BSD)
  • Elvis is a free vi clone for Unix and other operating systems.
  • Vigor the popular Unix editor vi with the addition of the Vigor Assistant, a deliberately irritating animated character modelled on Microsoft Office's Clippy.[2] (
  • VILE
  • vim "Vi IMproved" is an updated and extended clone, considered by many to be roughly equivalent in power to Emacs
  • bvi "Binary VI" is an editor for binary files based on the vi text editor.[3] (
  • svicc is a small VI Clone for the Commodore (64) [4] (

See also

Further reading

Oualline, Steve (2001) Vi IMproved - Vim, New Riders Publishers, 572 pp.

External links


es:Vi fr:Vi it:Vi (software) ja:Vi ko:Vi pl:Vi ru:Vi vi:Vi


Academic Kids Menu

  • Art and Cultures
    • Art (
    • Architecture (
    • Cultures (
    • Music (
    • Musical Instruments (
  • Biographies (
  • Clipart (
  • Geography (
    • Countries of the World (
    • Maps (
    • Flags (
    • Continents (
  • History (
    • Ancient Civilizations (
    • Industrial Revolution (
    • Middle Ages (
    • Prehistory (
    • Renaissance (
    • Timelines (
    • United States (
    • Wars (
    • World History (
  • Human Body (
  • Mathematics (
  • Reference (
  • Science (
    • Animals (
    • Aviation (
    • Dinosaurs (
    • Earth (
    • Inventions (
    • Physical Science (
    • Plants (
    • Scientists (
  • Social Studies (
    • Anthropology (
    • Economics (
    • Government (
    • Religion (
    • Holidays (
  • Space and Astronomy
    • Solar System (
    • Planets (
  • Sports (
  • Timelines (
  • Weather (
  • US States (


  • Home Page (
  • Contact Us (

  • Clip Art (
Personal tools