Vim - 它的朋友们



Vim 是原始 Vi 编辑器的克隆。在本章中,我们将讨论其他 Vi 克隆。本章的主要目的是了解其他克隆及其与原始 Vi 编辑器的兼容性。

在本章中,我们将讨论以下内容:

  • Vi
  • Stevie
  • Elvis
  • nvi
  • vile
  • 与原始 Vi 的兼容性

Vi

Vi 是 Visual 的缩写。它是一个最初为 UNIX 创建的面向屏幕的文本编辑器。Vi 的原始代码由 Bill Joy 于 1976 年编写,并在 BSD 平台上首次发布。Vi 是 ed 编辑器的扩展,当时 ed 编辑器是最常用的编辑器。

Vim 是第一个引入多种模式的编辑器。它有单独的模式用于编辑文本、选择文本和执行命令。Vim 编辑器支持所有这些模式。本教程的后续部分将描述这些模式。

Stevie

Stevie 编辑器是为 Atari ST 平台开发的。它于 1987 年发布,是 ST Editor for VI Enthusiast 的缩写。

它非常简单,只提供了原始 Vi 编辑器的一小部分功能。但是,它为迁移到 Atari ST 平台的用户提供了熟悉的环境。

Elvis

Elvis 的主要目的是消除 Stevie 编辑器的限制。Stevie 过去常常将整个文件加载到 RAM 中,Elvis 通过引入缓冲区消除了这个限制。它还在其中添加了一些功能,例如语法高亮、多窗口支持、网络支持和简单的 GUI。

nvi

nvi 代表 new Vi。它是 AT&T 实验室和加州大学伯克利分校计算机科学研究小组 (CSRC) 之间许可证纠纷的结果。Vi 基于 ed 编辑器,并且受 AT&T 的许可证限制,禁止他们将 Vi 与 BDS 一起分发。因此,他们重写了 Vi 并将其在 BSD 许可证下发布。

Vim

Vim 是 Vi 的改进版本,它添加了许多 Vi 缺少的功能。它添加了许多有用的功能,例如:

  • 多个窗口/标签/缓冲区
  • 引入了 Vim 脚本语言
  • 超过 200 种语言的语法高亮
  • 与编译器、解释器和调试器的集成

Vile

Vile 是 Vi like Emacs 的缩写,它试图将两个编辑器的流行功能结合到一起。Vile 的一些流行功能包括:

  • 每种文件类型一种编辑模式
  • 引入了 Vile 过程语言
  • 命名函数以根据用户选择绑定键

与原始 Vi 的兼容性

尽管上述编辑器被认为是 Vi 克隆,但它们与原始 Vi 不完全兼容。下表显示了有关其兼容性的更多详细信息:

克隆 Vi 兼容性 备注
STEVIE 10% 有限的功能是通用的
Vile 10% 有限的功能和 Vi 模式是通用的
Elvis 80% 较大的功能是通用的
nvi 95% 较大的功能是通用的
Vim 99% 几乎与 Vi 相同,并具有一些附加功能
广告