Vim:祝你 20 歲生日快樂
2011 年 11 月 2 日是 Vim 編輯器的 20 歲生日。
Vim 的昨天與今天
說到 Vim,不能不說的是 Vi 編輯器。Vi 是由 UNIX 的設計者之一 Bill Joy 在 1976 年編寫的,當初它的名字叫做 ex,而 Vi 只是 ex 的可視化模式 (VIsual mode)。在 2BSD 中,Vi 命令可以直接打開 ex 的可視模式。
Vi 擁有兩種模式——插入模式以及命令模式,因此有非常強大的編輯功能。且因為當時的 UNIX 系統都帶有 Vi 編輯器,幾乎所有的 UNIX 用戶都使用此編輯器,因此在 UNIX 世界中, Vi 編輯器的影響十分深遠。Vi 不是自由軟件 —— 由于 ed 部分版權的所有者是 AT&T,因此基于 ed 的原始版本 Vi 不能自由的分發。
“很長時間以來我都在使用 Amiga 計算機。我很習慣使用 Vi 編輯器,因此我也想在 Amiga 上使用它。我找到了一些 Vi 的復制品,但是他們都比較糟糕,因此我萌發了自己寫一個的念頭。我的最初目標是完成所有 Vi 可以做到的事情,逐漸的,我在 Vim 里加入了一些增強功能。我最初寫的 Vim 只是為了自己方便而已。但后來我意識到很多人也有一樣的需求,因此我將其開源。我漸漸的在 Vim 上投入了很多精力使之工作在不同的環境中,也從中盡享樂趣。” 2001 年 Vim 的最初作者 Bram Moolenaar 在第一期自由軟件雜志上如是寫道。
Vim 起初名為 Vi IMitation。版本 1.14 是 Vim 的第一個公開發布版本,在 1991 年 11 月 2 日發布于 Fred Fish 的 Amiga 自由軟件集 —— Fish Disk #591 中。Vim 1.22 移植到了 UNIX 以及 MS-DOS 系統。Vim 2.0 時,其改名為 Vi IMproved。在這之后,Vim 加入了很多新功能。Vim 3.0 加入了多窗口支持,Vim 4.0 支持了圖形界面,Vim 5.0 加入了語法高亮以及腳本支持。Vim 6.0 將其在一個與 GPL 兼容的協議下發布。目前 Vim 最新的版本是 7.3。本文題圖是在 Mac OS X 中運行的 Vim 7.3。如今, Single UNIX Specification 已經將 Vi 收錄為其中的一部分。
Vim 是一個慈善軟件。Moolenaar 在荷蘭創建了幫助烏干達兒童的 ICCF 基金會,此基金會直接對一個兒童中心捐款。他建議大家給那里的可憐兒童捐款。他目前是基金會的管理者,幾乎每年都去烏干達檢查 ICCF 捐助的兒童中心的進展。
如今,Vim 已經成為了無數人的首選編輯器。從計算機程序員到科學家乃至追求編輯效率的普通人,Vim 已經不再是一種編輯器,更多的這是一種習慣。從各種計算機程序的快捷鍵中,我們都可以看得到 Vi/Vim 的影子——按 q 退出, j, k 進行上下移動,按 / 進行查找……
即使圖形非常方便的今天,即使乍看起來命令行編輯器非常難以駕馭,其仍有不可比擬的優勢。Vim 的學習曲線開始時相當陡峭,但是只要入門,編輯效率將會大大提高。在 Vim 里,用戶可以將窗口進行任意分割、隨意安排,甚至它支持多標簽編輯。
Vim 有非常靈活的快捷鍵綁定。在命令模式中幾乎所有的按鍵都可以綁定到某個特定動作上,因此有非常好的定制性以及擴展性。通過組合命令,幾乎可以通過幾個按鍵進行大段文本的重新安排、組合、格式化。Vim 還支持正則表達式,以及基于正則表達式的替換,并有強大的擴展能力。這使得 Vim 作為一個單純的編輯器,擁有幾乎一切可以想象的功能。此處,無意點燃編輯器戰爭——畢竟 Emacs 操作系統沒有一個很好的編輯器。
Vim 可以工作在幾乎任何設備上,從 MS-DOS 到 Linux, Mac OS X, Windows, 甚至是 Android 手機上都可以看到 Vim 編輯器的蹤跡。
大家的 Vim
我是 2000 年左右開始使用 Vim 編輯器的。如今,我已經離不開 Vim 了。從平時的開發、調試到科技寫作,甚至是寫日記,無不可以使用 Vim 進行高效處理。
Vim 的 20 年見證著計算機發展的 20 年 —— 從命令行時代到現在的計算機高度圖形化、友好化的時代, Vim 作為一個傳統又現代的編輯器,雖然有著陡峭的學習曲線,但是努力的回報——大幅度的生產力提升是值得的。
你有什么和 Vi 的特殊故事么?歡迎在下面進行評論與大家進行討論。
來自: ifanr 愛范兒