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 相同,並具有一些附加功能
廣告