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