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



原文鏈接: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     //刪除插件

個人覺得必備的插件:

  • syntastic 多語言語法檢查
  • YouCompleteMe 代碼自動補全
  • ctrlp.vim 文件搜索,類似 Sublime Text 裏面的 Cmd + P
  • vim-airline 狀態欄增強
  • nerdtree目錄樹
  • vim-ctrlspace tab/buffer導航增強

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

哲學

非常推薦閱讀 Stack Overflow 上的這篇回答:

What is your most productive shortcut with Vim?

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

感悟

在學習 Vim、使用 Vim 的過程中,我最大的感悟就是「適合自己的,纔是最好的」

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

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章