Vim - 適合自己的,才是最好的

jopen 10年前發布 | 22K 次閱讀 Vim

Vim 被稱為編輯器之神,是我用過之后才體會到的,用之前實在不敢對它做出什么評價。在大學時代,Vim 的大名就已如雷貫耳,但由于它陡峭的學習曲線,一直望而卻步。等真正開始學習之后,發現并沒有想象中的復雜,也沒有所謂的瓶頸,只要在實際寫代碼中強迫自 己使用就可以了,無形中就會形成習慣。最初的不適,換來的是效率的飛升。這和我當初學習雙拼的感覺一樣。下圖是我的 Vim 界面:

Vim - 適合自己的,才是最好的

學習方式

我一開始也是看了很多教程,這里我就不說具體的學習方法了,因為 Google 上一搜一大堆。

我只想談一點:很多「過來人」告誡新手,一開始使用 Vim 一定不能使用插件, 要從最純凈的 Vim 開始練習 。他們認為一上手就使用別人的配置,很容易被別人影響,不能領會到自己配置 Vim,這種從無到有的感覺。雖然我也很喜歡折騰的感覺,但這對于學習、入門一個工具來說有點 南轅北轍 ,我們學習一個工具就是為了用好它,或者 用它來為我們服務 。為什么要我們去適應它呢?也許這不符合 Vim 的哲學,但是我覺得:

  • Vim 存在這么多年,已經有很多優秀的 Vim 配置(比如: spf13-vim ),可以為我們節省很多折騰的時間。不過如果你非常喜歡折(zuo)騰(si),那也可以從頭開始。
  • 對于新手來說,自己的配置總是很不成熟,到頭來還是得參考一些高手的配置。索性一開始用他們的,慢慢刪改。
  • 從純凈版開始你會覺得很枯燥,Vim 遠沒別人口中、視頻中所述的酷炫,效率不升反降。這很容易喪失進階的興趣。
  • 天下武功,唯快不破,這個時代求快。我不否認先夯實基礎,再層層遞進的學習方式,但針對不同的學習對象,不同的環境背景,我們還是應該采取最快、最有效的學習方式。

如果你學習 Vim 是為了體驗學習的新鮮感,或者業余玩味,請忽略我上面的話。但如果你的最終目的是為了在實際中用到它,提升我們的工作效率,那你不妨和我一樣,直接拉別人的配置下來,在 Shell 里輸入 Vim 啟動,開始寫代碼!

當時我找到了 k-vim ,按照他的安裝步驟,很簡單就把 Vim 配置好了,啟動 Vim,發現界面也很漂亮,嗯,這就是我要的效果。接著,我打開自己那兩天正在寫的項目,通過僅會的四個快捷鍵 HJKL 移動光標來查看文件。然后我仔細閱讀了 k-vim 的 README 文件,把它提到的幾個快捷鍵試了試,感覺很不錯。接下來的幾天,它的 README 網頁我一直開著,遇到想要的快捷鍵一搜就搞定,雖然寫代碼的效率確實下降了很多,但對編輯器的使用越來越純熟。一周之后我已經習慣用 Vim 來編程了。

接下來開始進一步研究 Vim,理解 Vim 的 三種模式 (正常模式、命令模式、視圖模式),然后掌握如何配置 插件快捷鍵 就OK了。最關鍵一點就是要實戰,強迫自己所有的操作只用鍵盤,強迫只用 Vim 作編輯器。

插件與快捷鍵

Vim 的插件可以通過 Vundle 來管理。(據說 vim-plug 也挺好用)

只需兩步:

  • vimrc.bundles 文件中配置你想要的插件
  • 在 Vim 的命令模式中輸入 :BundleInstall

其他的命令有:

:BundleUpdate //更新插件 :BundleClean //刪除插件 
</figure> 
<p> 個人覺得必備的插件: </p>

<ul> 
 <li> syntastic 多語言語法檢查 </li>

 <li> YouCompleteMe 代碼自動補全 </li>

 <li> ctrlp.vim 文件搜索,類似 Sublime Text 里面的 Cmd + P </li>

 <li> vim-airline 狀態欄增強 </li>

 <li> nerdtree目錄樹 </li>

 <li> vim-ctrlspace tab/buffer導航增強 </li>

</ul>

<p> 而快捷鍵的學習方法,就是用到的時候去 Google,多用幾次就記住了。如果它自帶的快捷鍵用著不舒服,你完全可以自己重設,Vim 就是自由,不必拘泥條條框框。 </p>

<h2> 哲學 </h2>

<p> 非常推薦閱讀 Stack Overflow 上的這篇回答: </p>

<p> <a href="/misc/goto?guid=4958876292495221189" target="_blank" rel="nofollow,noindex">What is your most productive shortcut with Vim?</a> </p>

<p> 這篇真正闡述了 Vim 作者當初設計 Vim 快捷鍵時的哲學,看懂這篇對 Vim 快捷鍵的掌握會更上一層。 </p>

<h2> 感悟 </h2>

<p> 在學習 Vim、使用 Vim 的過程中,我最大的感悟就是 <strong>「適合自己的,才是最好的」</strong> 。 </p>

<p> 很多插件看起來很酷炫,快捷鍵幾下就能實現很繁雜的操作,但是你不一定會有使用這個插件的需求,或者即使用也用的不多。有人總喜歡拿 IDE 和 Vim 比,我覺得這根本沒有比較的必要,你兩個都用也沒什么問題。大的項目,復雜的文件結構和引用,你不用 IDE 而用 Vim,是浪費時間。而且一般 IDE 都提供了 Vim 模式,你仍可以在 IDE 中繼續擊鍵如飛。 </p>

<p> 用 Vim 體驗的是一種 <strong>輕便、自由、可塑</strong> 的感覺。你可以根據自己的需求來培養 Vim,這就像戀(gao)愛(ji)一樣是兩個人互相適應的過程。互相習慣才能把效率最大化。 </p>

</div>

</div>

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!