自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

為什么老編輯器Vim這么難用,卻很受歡迎?

新聞 前端
一個1991年正式發(fā)布,如今已經(jīng)快30歲的「高齡」的代碼編輯器Vim,為何如此受歡迎?

本文經(jīng)AI新媒體量子位(公眾號ID:QbitAI)授權(quán)轉(zhuǎn)載,轉(zhuǎn)載請聯(lián)系出處。

一個1991年正式發(fā)布,如今已經(jīng)快30歲的「高齡」的代碼編輯器Vim,為何如此受歡迎?

在2019年「StackOverflow」關(guān)于最流行的開發(fā)環(huán)境的調(diào)查,Vim仍然排在并列第四位,大約有25%的Web開發(fā)人員正在使用它。

為什么老編輯器Vim這么難用,卻很受歡迎?

而在它之前的,全是2000年以后才出現(xiàn)的代碼編輯器。

Vim除了「高齡」以外,還有一個點也困擾著大家,那就是「難用」。如果你沒用過,你連怎么退出都不會!

而且這個難用的梗經(jīng)久不衰。

比如「StackOverflow」有一個近八年之久的問題,活躍度僅在2天前,瀏覽量累計達210萬次。

「如何退出Vim編輯器?」

為什么老編輯器Vim這么難用,卻很受歡迎?

這個看上去似乎是再簡單不過的問題了,卻依然經(jīng)久不衰,引發(fā)網(wǎng)友熱切討論。

這時候,可能就想問,為何這個Vim這么難用,還這么受歡迎?

了解一下它的歷史由來,也許就可以窺見一些原因。

半世紀的積累

最近有一位博主Nikola Đuza,就介紹了Vim是如何開始的——「How Did Vim Become So Popular」。

為什么老編輯器Vim這么難用,卻很受歡迎?

還記得以前「打孔卡」的時代嗎?將「打孔卡」放入計算機內(nèi)部從而實現(xiàn)編程。對于這一方式來說,放置他們的順序很重要。

想象一下,這是一張4.5mb數(shù)據(jù)的照片,堆疊在62500個打孔卡中,然后刪除它,再次對它排序。

[[332375]]

但是隨著計算機功能和存儲增長,打孔卡漸漸不能滿足程序員的需求,這時候出現(xiàn)了QED編輯器(ed的前身),由此便進入到了「行編輯」時代。

ed編輯器

ed編輯器是一款經(jīng)典的行編輯器,由貝爾實驗室開發(fā),1973年正式發(fā)布,已經(jīng)有47年之久,但至今仍然可以使用。

如果你使用的是Linux或Mac OS,打開終端,輸入ed,便可以得到一個簡單的行編輯器。

而如果你要寫入文件,輸入 a并按Enter鍵,就可以開始編寫文本,輸入.退出附件模式。然后寫入文件,可以輸入「w myfile.txt」并按Enter鍵,最后輸入q退出。

  1. # ed 
  2. Hey there! 
  3. I'm qbitai.I'm using ed right now. 
  4. How cool!     
  5. w myfile.txt 
  6. 60 

而使用Vim的網(wǎng)友,可能就會覺得很熟悉。Vim和ed有很多相似的地方。這篇博主就提到說,如果你會使用Vim,那么ed就會很快上手。

比如,:q

[[332376]]

而在ed之后,便是em。它有「the editor for mortals」(凡人的編輯器)的稱號。

也就是說,em可以跟ed做一樣的事情,但是沒有ed那般神秘,更適合大多數(shù)人使用。

Vim的前身——Vi

而隨后基于em代碼,Sun聯(lián)合創(chuàng)始人,兼首席科學家Bill Joy開發(fā)了ex,算得上是擴展版。它在以往的模式上增加了visual模式,它可以在屏幕上打開文件。

三年之后,操作系統(tǒng)中引入了可執(zhí)行文件Vi,但仍然可以通過在Vi/Vim訪問ex命令。

為什么老編輯器Vim這么難用,卻很受歡迎?

是他奠定了今天Vim編輯器的鍵位設(shè)計,如果覺得快捷鍵難記,就怪他吧。

當時Bill Joy使用的是下面的鍵盤:esc鍵在現(xiàn)在的tab位置,方向鍵和字母鍵混用,這也就注定了之后Vim怪異的鍵位設(shè)計。

為什么老編輯器Vim這么難用,卻很受歡迎?

vi發(fā)布是在1979年,那么Vim是如何誕生的呢?

Vim的誕生

這還得從Vi發(fā)布之后的「模仿」開始,很多人開始模仿、克隆vi編輯器。當時就有這么一個「Vi Improved」從中脫穎而出。

它是由「Bram Moolenaar」創(chuàng)建,這個人來頭可不小,他還是軟件開發(fā)工具A-A-P、編程語言Zimbu的開發(fā)者。在使用Vim的人,可能看到過他的名字。

[[332377]]

Bram使用了一個名為STEVIE的Vi克隆版,并注意到它缺少許多vi的命令。他在此基礎(chǔ)上增加了一些新的功能,使其與vi兼容,并以 “Vi Improved “的名義發(fā)布。

1993年的2.0版本開始使用Vim名字,然后一直這樣沿用至今。

為什么老編輯器Vim這么難用,卻很受歡迎?

這個幾乎集成了近半世紀智慧與努力的Vim,將大量的精力都放在了兼容性上。

博主也說,也許Vim一些有用的功能讓出名,但是能讓Vim一直都屹立不倒的原因是,它幾乎兼容了所有你能想到的東西。

這也是很多程序員的愛用Vim主要原因。而除了兼容性強的優(yōu)點,強大的鍵位設(shè)計,自行設(shè)定快捷鍵等這些都讓Vim成為提升工作效率的絕對利器呀!

讓人又愛又恨

Vim誕生的時候,鼠標還不是電腦標配,所以Vim盡量為純鍵盤操作而優(yōu)化。

而后來圖形化界面、鼠標的普及,讓更過代碼編輯器脫穎而出,配合鼠標操作學習門檻低,但效率不及Vim老手。

這也是Vim讓人又愛又恨的原因吧。

談到Vim,國內(nèi)的程序員怎么看?首先是入門難度大:

用Vim寫接口還行,不過還是需要學習下Vim的快捷鍵,不然太痛苦了。

為什么老編輯器Vim這么難用,卻很受歡迎?

但是用熟了之后,簡直能把Vim用的飛起:

熟悉了之后確實操作起來很快,特別不喜歡用上下左右鍵。

為什么老編輯器Vim這么難用,卻很受歡迎?

還有Vim重度使用者來現(xiàn)身說法,真正的Vim高手,是不需要鼠標的~

就因為喜歡上這種雙手不離鍵盤就可以操控一切的feel ,Vim可以讓我對文本的操作更加精準,高效。

為什么老編輯器Vim這么難用,卻很受歡迎?

不過,這位網(wǎng)友也提到,對初學者可能不是特別友好,因為Vim有一定的學習成本,只有做到非常熟練才能感受到它帶來的快捷。

如何花式退出Vim?

那么回到一開始的問題,怎么退出Vim呢?

不談?wù)?jīng)的方法(:q!),有人曾總結(jié)了千百種花式退出方法,請看這里:

天下苦Vim久矣!硬核程序員教你如何花式退出Vim,一周收獲2400星

吐槽歸吐槽,你覺得Vim好用嗎?你在寫代碼的時候又用著哪一款編輯器呢?

 

責任編輯:張燕妮 來源: 量子位
相關(guān)推薦

2020-06-16 14:13:50

Kubernetes容器Linux

2020-08-05 07:50:40

開發(fā)編輯器技術(shù)

2024-06-03 00:00:03

2017-07-26 10:21:46

DockerLinux容器

2021-03-02 16:25:13

手機iPhone安卓

2020-04-23 16:04:25

代碼編輯器工具程序員

2020-06-02 19:14:59

Kubernetes容器開發(fā)

2020-12-26 15:21:44

VimKakoune文本編輯器

2019-07-09 06:45:26

UbuntuLinux應用

2019-07-05 10:03:05

UbuntuLinux應用

2020-10-14 14:00:39

VIM編輯器

2020-09-07 15:46:48

GitHubVim開發(fā)

2018-09-25 09:25:11

Vim編輯器命令

2011-01-10 16:17:49

2017-03-09 11:45:16

LinuxVim編輯器

2018-05-11 14:59:21

LinuxVim編輯器

2019-12-16 14:54:47

JavaScript開發(fā)語言

2022-06-16 20:56:53

邊緣計算

2021-03-02 08:40:38

區(qū)塊鏈編程語言開發(fā)

2020-04-26 10:52:34

Hive運行數(shù)據(jù)庫
點贊
收藏

51CTO技術(shù)棧公眾號