Nvi 949661 224968408 2008-07-11T06:25:30Z Realwhz 5563350 add new development website for nvi {{lowercase|title=nvi}} '''nvi''' ('''new vi''') is a re-implementation of the classic Berkeley [[text 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 Systems Research Group]] (CSRG) 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 despite the fact that the original vi was from [[University of California, Berkeley|UC Berkeley]]. AT&T had a legal claim over the license. ''nvi'' turned out to be a major improvement over the classical vi as discussed below. ==Features== Usually referred to as a ''vi-clone'', ''nvi'' contains a number of features not present in the original program. These include: *8-bit clean data, lines and files limited by available memory *Multiple edit buffers *Colon command-line editing and path name completion *Tag stacks *[[Cscope]] support *Extended [[Regular Expressions]] *Infinite [[undo]] *Horizontal [[scrolling]] *Message catalogs (Dutch, English, French, German, Russian, Spanish, Swedish) *Preliminary support for [[Perl]] and [[Tcl/Tk]] scripting languages Features that are not present in version 1.79 (which are in the original program) include: * lisp mode * modelines ==Credits and distribution== ''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]], and [[FreeBSD]]). ''Sven Verdoolaege'' added support for [[Unicode]] in 2000. He also 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 that way. [[BSD]] projects continue to use version ''1.79'' due to licensing differences between [[Berkeley DB|Berkeley Database]] ''1.85'' and the later versions by [[Sleepycat Software]]. ''nvi'' is unusual because it uses a database to store the text as it is being edited. ''Sven Verdoolaege'''s changes after version ''1.79'' use locking features not available in the ''1.85'' database. There are also reportedly changes to nvi after ''1.79'' which make nvi less [[vi]]-compatible{{Fact|date=August 2007}}. Due to the liberal policy of the [[BSD license]], ''nvi'' can vary subtly across the [[BSD]]s. It was originally derived from the first incarnation of [[Elvis (text editor)|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 (programming library)|curses]]/[[ncurses]] library. A multilingual version is available as [[nvi-m17n]] by [[Jun-ichiro itojun Hagino]].<ref>{{cite web|url=http://www.suse.de/~mfabian/suse-cjk/nvi-m17n.html|title=(CJK) Support in SuSE Linux|author=Mike Fabian}}</ref> <ref>{{cite web|url=http://www.usenix.org/events/usenix99/full_papers/hagino/hagino.ps|title=Multilingual vi clones: past, now and the future|author=Jun-ichiro itojun Hagino and Yoshitaka Tokugawa}}</ref> ==References== {{reflist}} == See also == {{portal|Free software|Free Software Portal Logo.svg}} *[[Vim (text editor)|vim]] *[[Elvis (text editor)|elvis]] ==External links== *[http://www.bostic.com/vi/ The Berkeley Vi Editor Home Page] *[http://www.openbsd.org/cgi-bin/man.cgi?query=vi the (n)vi man page] via [[OpenBSD]] *[http://www.kotnet.org/~skimo/nvi/ The latest development releases of nvi] [[Category:Free text editors]] [[Category:Unix text editors]] [[Category:Curses-based software]] [[fr:Nvi]] [[ja:Nvi]] [[fi:Nvi]]