Vim – 它的朋友们
Vim是一种原始Vi编辑器的克隆版本。在本章中,我们将讨论其他Vi克隆版本。本章的主要目的是了解其他克隆版本以及它们与原始Vi编辑器的兼容性。
本章将讨论以下内容:
- Vi
- Stevie
- Elvis
- nvi
- vile
- 与原始Vi的兼容性
Vi
Vi是Visual的缩写。它是一种最初为UNIX创建的面向屏幕的文本编辑器。Vi的原始代码由比尔·乔伊于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代表新的Vi。它是AT&T实验室和加州大学伯克利分校计算机科学研究小组(CSRC)之间的许可纠纷的结果。Vi基于ed编辑器,并受到AT&T的许可证的限制,他们不能在BDS中分发Vi。因此,他们重新编写了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相同,但具有一些附加功能 |