The Traditional Vi

exvi1 pts0 comments

The Traditional Vi

The Traditional Vi

Source Code for Modern Unix Systems

The vi editor is one of the most common text editors on Unix. It was<br>developed<br>starting around 1976 by<br>Bill Joy<br>at<br>UCB, who was tired of<br>the<br>ed<br>editor. But since he used ed as a code base, access to the<br>original sources has required a commercial Unix Source Code License for more<br>than twenty years. In January 2002,<br>Caldera was so kind to remove usage<br>restrictions to the Ancient Unix Code by a<br>BSD-style license<br>(see the

announcement at Slashdot)<br>and thus vi is now finally free.

Compared to most of its many clones, the traditional vi is a rather<br>small program (the binary size is approximately 160 kBytes on i386)<br>just with its extremely powerful<br>editing interface, but lacking fancy features like multiple undo,<br>multiple screens, or syntax highlighting.

This port of vi has generally preserved<br>the original style, terminal control, and feature set.<br>It adds support for international character sets,<br>including multibyte encodings such as UTF-8,<br>and some minor enhancements that were not present in BSD vi 3.7,<br>but had been included in later vi versions for System V or in POSIX.2.

Download the source code

Release 050325 (current)

New releases of this project are announced on<br>freshmeat.net.<br>You can use their subscription service<br>to get an email when a new version is available.

All releases

Browse the CVS repository

The most recent results of development are sometimes made available<br>in the public CVS repository.<br>Use

$ cvs -d:pserver:anonymous@ex-vi.cvs.sourceforge.net:/cvsroot/ex-vi login<br>CVS password:<br>$ cvs -d:pserver:anonymous@ex-vi.cvs.sourceforge.net:/cvsroot/ex-vi co ex-vi

to retrieve a copy.<br>Follow<br>these instructions<br>for more information.<br>If you want to report a problem, please look at the<br>Changes file in CVS<br>to see if it has already been resolved,<br>and if so, try if the fix works for you.<br>Do not use the code from CVS unless you have a special reason to do so.<br>It may be incorrect, not well tested, and might not even compile.<br>Also note that the libuxre subdirectory<br>and the regexp.h include file<br>are not available from CVS<br>because their contents are maintained as part of the<br>Heirloom Toolchest.<br>So to build from CVS sources,<br>copy these items from an earlier release archive.

Documentation

For installation instructions and a list of supported systems, see the<br>README.

Changes in ex and vi is a detailed<br>listing of all modifications in the port.

An Introduction to Display Editing with Vi<br>is both a tutorial and a source of knowledge for more advanced users.<br>This edition contains some annotations for changes in the port.<br>It is also available as a<br>complete archive<br>for offline reading.<br>The manual page ex(1) provides<br>reference documentation for the basic concepts of the editor,<br>addressing lines,<br>ex commands (prefixed by a ':' in visual mode),<br>regular expressions and substitutions,<br>and configuration options.

The manual page vi(1) describes<br>the command characters in visual mode.

Gunnar Ritter<br>gunnarr@acm.org> 2007-11-29

code traditional source unix available from

Related Articles