摘要:在這樣一個時代,還要學(xué)這種中古的技能嗎我來討論一下為什么要,不但要,而且必須要。其實(shí)要說功能強(qiáng)大,的產(chǎn)品無疑都很牛。這也是造成它學(xué)習(xí)成本高,被人吐槽多的原因。出現(xiàn)之后,包括等等在內(nèi)的各種創(chuàng)新涌現(xiàn)了出來。
曾經(jīng)有一段時間,編輯器領(lǐng)域的創(chuàng)新停滯了。在web編程走紅,尤其是electron出現(xiàn)之后,這個領(lǐng)域又上了一個新臺階。Atom, VsCode等等替代了之前唯一的但是臃腫的跨平臺選擇 - Java。一時之間,大家都開始用網(wǎng)頁來寫代碼了。
在這樣一個時代,還要學(xué)Vim這種中古的技能嗎?我來討論一下為什么要,不但要,而且必須要。
Vim仍然是最高效的編輯器
Vim仍然在高速進(jìn)化
Vim是編輯器領(lǐng)域的Javascript
高效Vim的學(xué)習(xí)曲線是出了名的高。但是這背后是高投入,高產(chǎn)出的效率。
隨便舉幾個例子:dd刪除一行,兩個鍵搞定。普通的編輯器可能要
w可以跳過一個單詞,普通的編輯器要
這只是九牛一毛。而且用的時間越久,你積累的技巧就越多,你的效率就越高。
高效的另外一面是:反應(yīng)快。其實(shí)要說功能強(qiáng)大,JetBrain的產(chǎn)品無疑都很牛。但是在大腦高速運(yùn)轉(zhuǎn)的時候,思維到屏幕上字符的轉(zhuǎn)化過程減少2-300毫秒導(dǎo)致體驗(yàn)的差別是巨大的。就好像。。。。
其實(shí)Vim的高效很大程度上應(yīng)該歸功于所謂模式編輯 - Vim于大多數(shù)編輯器不同,有insert,
normal,
visual等等幾個模式。這也是造成它學(xué)習(xí)成本高,被人吐槽多的原因。最近網(wǎng)上瘋傳的段子就是“如何退出Vim”。各種歡快的圖片層出不窮。這里忍不住貼一個瘋狂的圖片。如果你看到這個圖片決定不學(xué)Vim了,那是你的損失。反正我覺得這酷畢了。
Vim 從Vi進(jìn)化而來,為一個略顯骨感的編輯引擎加入了諸多特性:
跨平臺
語法高亮
diff
split
plugin和vimscript....
在大約兩年前,neovim出現(xiàn)了。它主要做了這么幾件事:
將Vim的開發(fā)方式帶入21世紀(jì)
加入async方式
遠(yuǎn)程控制
Vim的開發(fā)一直都是一個個人秀。當(dāng)kernel已經(jīng)從patch遷移到CVS遷移到bitlocker遷移到git的時候,當(dāng)sourceforge已經(jīng)經(jīng)歷了諾基亞式的巔峰到谷底的時候,Bram還基本停留在N年前的模式。當(dāng)然,Vim首先是一個個人項(xiàng)目,無論怎么做都不過分。但單從技術(shù)進(jìn)步的角度來講,這確實(shí)是逆潮流的。
async看來是一件小事,但是卻從根本上移除了用戶體驗(yàn)的絆腳石。neovim出現(xiàn)之后,包括ALE等等在內(nèi)的各種創(chuàng)新涌現(xiàn)了出來。甚至Vim8也不上了這個缺口。這個領(lǐng)域發(fā)展的速度一下子從步行編程了摩托車,出來一兩個偉大的產(chǎn)品一點(diǎn)也不出奇。
遠(yuǎn)程控制用一種叫做msgpack的IPC將編輯核心和UI徹底分割了。方便了UI編寫者。其中一個令人振奮的就是和VsCode的集成。
寫這篇文章的時候,恰逢neovim最新的newsletter發(fā)出。有興趣的可以戳這里看看。
Javascript我在拿編程語言和一個編輯器做比較嗎?我喝多了?
現(xiàn)在流行,甚至不怎么流行的編輯器或IDE,都支持插件。而在這些插件里面,總有一個插件是不會缺席的,那就是Vim。JetBrain有IdeaVim,VsCode有,Atom有,Sublime有,Chrome, Firefox也有,連Office都有,還收費(fèi)! 這里面有一個邏輯,不是因?yàn)閂im很流行,而是Vim有意無意地創(chuàng)造了一種編輯的語言。比如dw,yy, g, gg等等。這些快捷的命令在熟悉之后,不再是簡單的命令而已,而成為可以組合的元素。你不會在思考用什么樣的命令,而任由你的指頭自行在鍵盤上跳動,進(jìn)行它自己的編程。
學(xué)會了Vim之后,無論什么IDE,無論在什么平臺上,都無需再學(xué)習(xí)另外一套鍵盤快捷。可謂一勞永逸。例如現(xiàn)在如日中天的VsCode,有非常多的快捷鍵,而且每個平臺各有不同。但是只用安裝一個Vim插件,這些快捷鍵都不用學(xué)了。
之所以和Javascript比,是因?yàn)椋簬缀跛械恼Z言都可以transpile成Javascript; 幾乎所有的編輯器和IDE,都支持Vim插件。
人生苦短,快學(xué)Vim!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/24992.html
摘要:學(xué)習(xí)使用就是在命令行中輸入第一步我個人認(rèn)為是最難的一步。依然很水,不會的配置上網(wǎng)搜索然后到自己的中。走到進(jìn)階就差不多懂得為何物因?yàn)榭赡苁懿涣俗约褐械淖煮w,配色,以及目錄或者括號匹配等等問題。希望本文對于想要學(xué)習(xí)的你有所幫助。 本文出自Svitter的blog 原文在之前的也曾發(fā)表 Write with Vim (2) 大約在一年前使用vim?這個也是個不確定的時間。具體什么時間...
摘要:依云醬呢,是一名資深用戶已經(jīng)不會用現(xiàn)在的的,喜歡同時也屬蛇,看來是命中注定,最近喜歡上了不是那個黃褐色的鐵氧化合物哦。清蒸依云醬,我快死在你的標(biāo)題上了。 showImg(https://segmentfault.com/img/bVRChj?w=900&h=385); 社區(qū)訪談的上期說到上帝有明是如何通過他的個人魅力撩得妹紙歸,回憶傳送門,不過逗得了妹紙笑,引得了漢紙拜(唔,崇拜的拜,...
摘要:依云醬呢,是一名資深用戶已經(jīng)不會用現(xiàn)在的的,喜歡同時也屬蛇,看來是命中注定,最近喜歡上了不是那個黃褐色的鐵氧化合物哦。清蒸依云醬,我快死在你的標(biāo)題上了。 showImg(https://segmentfault.com/img/bVRChj?w=900&h=385); 社區(qū)訪談的上期說到上帝有明是如何通過他的個人魅力撩得妹紙歸,回憶傳送門,不過逗得了妹紙笑,引得了漢紙拜(唔,崇拜的拜,...
摘要:的哲學(xué)第四篇姍姍來遲,狗血的原因我就不多說了,好消息是我將為這個系列帶來一些動態(tài)演示。所以目前為止你學(xué)會上述四個動作指令就足夠了。以詞為單位使得我們可以更精確也是更具語義化的移動光標(biāo),并且要比逐個字符的移動要快得多。 Vim 的哲學(xué)第四篇姍姍來遲,狗血的原因我就不多說了,好消息是我將為這個系列帶來一些動態(tài)演示。原本我打算錄視頻的,但是文章都寫了那么些篇了,現(xiàn)在再錄視頻似乎晚了些,所以我...
閱讀 3974·2021-09-27 13:35
閱讀 1121·2021-09-24 09:48
閱讀 2940·2021-09-22 15:42
閱讀 2377·2021-09-22 15:28
閱讀 3180·2019-08-30 15:43
閱讀 2645·2019-08-30 13:52
閱讀 3000·2019-08-29 12:48
閱讀 1483·2019-08-26 13:55