| |||||||||
nvi (new vi) is a re-implementation of the classic Berkeley editor, ex/vi, traditionally distributed with BSD, and later, Unix systems. It was originally distributed as part of the Fourth Berkeley Software Distribution (4BSD).
Due to licensing disputes between AT&T and the Computer Sciences Research Group at the University of California, Berkeley (see USL v. BSDi), the CSRG was required to the replace Unix-derived portions of BSD source with new and unencumbered code. nvi was one of many components to be re-written.
Usually referred to as a vi-clone, nvi contains a number of features not present in the original programme. These include:
nvi was written by Keith Bostic, and currently seems to be frozen at version 1.79. It is the default vi on all BSD systems (NetBSD, OpenBSD, FreeBSD); Apple's Darwin system has recently switched over to vim, another (and more frequently maintained) feature-rich vi-clone.
Sven Verdoolaege has been developing a GTK front-end for nvi, but this effort seems to have stalled. The aspects of nvi that are still marked preliminary or unimplemented are, for the time being, likely to remain thay way.
Due to the liberal policy of the BSD license, nvi can vary subtly across the BSDs. It was originally derived from the first incarnation of elvis, written by Steve Kirkendall.
As with the original vi, nvi is only executable on POSIX/Unix platforms due to its reliance on the curses library. This distinguishes nvi from both vim and more recent versions of elvis, which are portable across a number of different systems.