Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Введение
Реализация ex/vi
Re implementation of ex/vi
nvi (new vi) – это переосмысление классического текстового редактора Berkeley, ex/vi, который традиционно распространялся с BSD и, позднее, Unix-системами. Изначально он был включен в состав Четвертого дистрибутива программного обеспечения Беркли (4BSD). В связи с лицензионными спорами между AT&T и исследовательской группой компьютерных систем (CSRG) Калифорнийского университета в Беркли, CSRG была вынуждена заменить все части исходного кода BSD, происходящие от Unix, новым и свободным от ограничений кодом. nvi стал одним из многих компонентов, которые были переписаны, несмотря на то, что оригинальный vi был разработан в UC Berkeley. AT&T имела юридические права на лицензию.
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, the CSRG was required to replace all Unix derived portions of BSD source with new and unencumbered code. nvi was one of many components rewritten, despite the fact that the original vi was from UC Berkeley. AT&T had a legal claim over the license.
Кредиты и распространение
Nvi был написан Китом Бостиком. Это стандартный редактор vi во всех основных BSD-системах (NetBSD, OpenBSD и FreeBSD), а также в MINIX. Изначально он был создан на основе первой версии elvis, написанной Стивом Киркендаллом, как указано в файле README, включенном в исходный код nvi. Свен Вердолаге добавил поддержку Unicode в 2000 году. Он также разрабатывал GTK+-интерфейс для nvi, но эта работа, по-видимому, приостановлена. Функции nvi, которые до сих пор помечены как предварительные или нереализованные, скорее всего, останутся таковыми в ближайшем будущем. Проекты BSD продолжают использовать версию nvi 1.79 из-за различий в лицензиях между Berkeley Database 1.85 и более поздними версиями от Sleepycat Software. Nvi необычен тем, что использует базу данных для хранения редактируемого текста. Изменения Свена Вердолаге после версии 1.79 используют механизмы блокировки, недоступные в базе данных Berkeley DB 1.85. Сообщается, что изменения в nvi после версии 1.79 снижают его совместимость с vi. Nvi может незначительно отличаться в разных BSD-системах. Nvi доступен только на платформах POSIX/Unix из-за зависимости от библиотек curses/ncurses. Неподдерживаемая многоязычная версия, созданная покойным Джун Итиро Хагино (Itojun), доступна как nvi m17n. В настоящее время поддерживаемая многобайтовая версия доступна как nvi2 и является редактором vi по умолчанию в DragonFly BSD.
nvi was written by Keith Bostic. It is the default vi on all major BSD systems (NetBSD, OpenBSD, and FreeBSD) as well as MINIX. It was originally derived from the first incarnation of elvis, written by Steve Kirkendall, as noted in the README file included in nvi's sources. 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 nvi version 1.79 due to licensing differences between 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 Berkeley DB 1.85 database. Reportedly, changes to nvi after 1.79 make it less vi compatible. nvi can vary subtly across the BSDs. nvi is only available on POSIX/Unix platforms due to its reliance on the curses/ncurses library. An unmaintained, multilingual version by the late Jun ichiro itojun Hagino is available as nvi m17n. A currently maintained, multibyte version is available as nvi2, and is the default vi on DragonFly BSD.