有时在某些Unix上,我找到了一个名为nvi的命令。它是一个类似vi的编辑器,没有很多功能。也许这是旧版vi的分支?无论如何,哪个vi版本是其他版本的分支,哪些是独立开发的?它们是否具有与Unix相似的“家谱”?

#1 楼

nvi(1)开始:

HISTORY
    The ex editor first appeared in 1BSD.  The nex/nvi replacements for the
    ex/vi editor first appeared in 4.4BSD.


内存中有一些背景,所以我希望细节正确:

在一开始,UNIX是免费的。每个人都可以向Ken索要一份副本,他会
将带源的录音带寄给您(或在其上带有“ love,Ken”的文字)。术语“自由软件”或“开放源代码”还不存在,但是对于所有
目的和目的,它都是“开放源代码”。

原因是因为UNIX是由贝尔实验室开发。贝尔实验室
是AT&T的一部分,当时AT&T在电话领域拥有有效的垄断地位。作为与美国政府达成的协议的一部分,双方同意不允许AT&T进入其他业务领域(例如计算机)。

这改变了,UNIX成为专有软件。结果,BSD(源自UNIX)也成为专有软件。 vi是BSD的一部分,因此也成为专有软件。

这就是为什么在80年代末至90年代初出现了一些“ vi克隆”,例如stevie(后来vimnvi的基础。

在90年代初,人们想要一个免费的BSD系统,因此nvi是为
4.4BSD-lite(lite的意思,不受AT&T的束缚)创建的。代码),因此nvi被创建为
受累的vi的“兼容bug的错误”。它具有vi的所有功能,但没有vim中可能提供的更高级的功能。

FreeBSD和NetBSD都从4.4BSD-Lite继承(而OpenBSD和DragonflyBSD
从NetBSD下降和FreeBSD),这就是为什么它们默认安装了
nvi

与Linux不同,BSD系统只有一个“基本”系统,其中nvi是其中的一部分
,因此nvi实际上有4个以上的版本。但实际上变化是
BSD项目很小或根本不存在,所以它交换代码,因此大多数错误修正和增强功能是共享的(但可能不是全部?)。我相信FreeBSD例如在几年前增加了多字节支持。

vim的故事更无聊:Bram在Amiga上运行,想运行vi,但找不到Amiga的vi。因此他采用了stevie代码,将其移植到Amiga,并继续进行进一步改进。这就是为什么即使在今天您仍然可以在文档中找到许多与Amiga相关的注释的原因。
同时,UNIX再次“免费”,并且您可以运行
原始的vi

评论


Wikipedia声称nvi基于Elvis,后者与原始386BSD一起提供,并且是为了制作更纯粹的vi兼容版本。这个对吗?

–Random832
2015年2月27日在17:06



#2 楼

vi克隆的家谱的根源似乎是:


1977:“传统vi”,这是Bill Joy的原始资料,自2002年以来移植并可以免费使用。
:Stevie,从中开发出vim和xvi
1990:埃尔维斯,从中开发nvi
2000:busybox的“小小的vi“