複製鏈接
請複製以下鏈接發送給好友

編輯器之戰

鎖定
編輯器之戰是指計算機編程領域內,兩類文本編輯器 vi(以及衍生版本) 和 Emacs 用户之間的對抗衝突。這已經成為黑客文化和自由軟件社區文化的一部分。
中文名
編輯器之戰
外文名
The battle of the editor

目錄

編輯器之戰簡介

戰火在兩羣用户之間多次點燃,他們互相蔑視,堅信自己的選擇才是最完美的。相比其他的IT領域戰爭(如瀏覽器大戰、操作系統之爭、編程語言之爭、代碼縮進風格之戰),編輯器的選擇其實通常只是個人問題。

編輯器之戰不同之處

vi 與 Emacs 之間最重要的不同見下表:

vi
Emacs
快捷鍵命令
vi 通過記錄按鍵序列,形成決策樹中的一條路徑,從而確定一個命令。
Emacs 通過組合鍵的方式立即執行命令。
內存佔用和定製性
由於歷史原因,vi 小而快,但定製性上比較受限。
Emacs 啓動慢且佔用更多內存,但高度可定製,包含大量複雜功能。它基本上是一個Lisp程序的執行環境。
用户界面
vi 早先獨佔命令行終端,沒有圖形用户界面(GUI)。後來的衍生版本,如MacVim 和 gVim,都具備全功能的GUI。
Emacs,最初也為終端設計,但很早就具備了GUI,現代版本提供眾多GUI版本。
功能/導航
vi 具名明確的編輯模式。
Emacs 採用功能鍵組合。
vi的優點
遵循“簡單工具,多樣組合”的理念。
小,符合Unix 哲學中的“只做一件事,並做好它”,避免了功能蔓延。
比 Emacs 快 (至少歷史上是這樣的)。
可運行於任何實現了C 標準庫的系統之上,包括UNIX、Linux、AmigaOS、DOS、Windows、Mac、BeOS和POSIX兼容系統等等。
讓“QWERTY”鍵盤用户將手指保持在默認鍵位上,使編輯時手指移動更少。
更普及。基本上所有Unix和類Unix系統都默認提供了vi或其變體。
Emacs的優點
符合“廚房水槽”理念,提供了比vi更多的功能。
移植最廣泛的非試用計算機程序之一。它能在各種操作系統上運行, 包括大多數類 Unix 系統(GNU/Linux、各種BSD、Solaris、AIX、IRIX、AmigaOS、Mac OS X[1][2]等)、MS-DOS、Microsoft Windows[3][4][5]和OpenVMS。Unix系統,無論自由版本或商業版本,均隨系統提供Emacs。
可擴展和可定製(Lisp的變體 - Emacs Lisp),功能包括:
專門的編輯模式,支持大量編程語言、標記語言、排版語言 ,如Bash、C、Delphi、Java、Lisp、LaTeX、MediaWiki、Python等。
可模擬 vi (“viper-mode”)。
強大可擴展的文件管理器 (dired)、智能調試器和大量工具。