標籤:
這是一系統總結vim的學習文章,記錄我自己學習vim的過程和感悟。與此同時也想分享出來給大家,歡迎大家互相討論和學習。
在這裡假設你們對vim已經有了一些基本的認識或者說已經使用過幾個月的vim。該系列文章裡有些基礎概念可能不會涉及到或者不會多做解釋。一個是因為有些基礎概念我目前也解釋不清楚。越基礎的解釋起來越需要能力,目前鄙人還不具備。另一個是因為我相信各位大神們,你們已經有很好的搜尋功能。當然有問題也歡迎大家互相討論和學習。
這篇主要講的是我當前對vim學習的理解。後面的一系列文章會針對於學習實戰的“從熟悉到精通”具體展示記敘。
困境
從開始接觸vim到現在快2年,陸陸續續學習vim不下5次。有看書,有看視頻,有看部落格……,然後自己練著玩、工作環境中使用。然而我卻陷入一個困境:每次使用的時候大概知道怎麼用,不過還得上網搜,搜完再小心翼翼的試,試完後很爽,爽完後猛的發現已經浪費很多時間,然後下次情境重現,一直死迴圈。
所以本系列的文章就是為了擺脫這種困境而生。我是一個懶惰的人,不想花時間在重複的事情上。
目的
本系列的文章的目的有兩個。一個是掌握高效的文本編輯思維及習慣.一個是徹底消滅由文本編輯而引起的垃圾重複時間。
定義
vim是一個神一樣的文字編輯器。它的核心是編輯文本。
優點
一直在各個地方找尋它的優點。論調很多,關鍵的是我可能暫時還沒法區分。只是從我眼中直觀來看,它有這麼些優點
- 無平台移植問題,無論是windows,linux還是mac,學一次一輩子都可以使用。
- 手不用離開鍵盤主要輸入區,視線不用離開目標文本。用滑鼠再切回來鍵盤打字是很低效的一件事,所以我特別喜歡快速鍵,能不用滑鼠的都不想用滑鼠。
- 專註於內容建設要比排版重要,而Word顯然做不到。對於程式猿來說,這是一件天大的喜事。
學習感受
大家都在說vim的學習曲線,大概意思是門檻高,不過入了門就是飛一般的感受。沒錯這裡我說的就是感受,劃分這些感受是希望大家不會覺得孤單,其實我們都一樣。也是希望大家能看到只要堅持,感受會越來越美妙。很多人使用vim,可能最終無奈的原因是伺服器環境只能使用vim。其實vim最終可以像情人一樣。
惡夢,這是什麼鬼
一開始是notepad++, word, edit壟斷你的大腦, 這些東西根深蒂固, 揮之不去Vim的使用對你而言是一場噩夢, 它降低而不是提高了你的工作效率. 對三種工作模式的不解甚至使你認為它是一個充滿BUG或者至少是一個古怪的與當今友好使用者介面設計嚴重脫節的軟體。會不由自主的說:“靠,這是什麼鬼!”
食之無味,去之可惜
開始熟悉一些基本的操作, 這些操作足以應付你日常的工作, 你使用這些操作時根本就不假思索. 但這些階段你仍然很少去碰Vim那晦澀的線上協助文檔. 它在你心裡只是notepad++, edit一個勉強合格的替代品。心裡會泛起一陣陣憂傷:“這東西好像也沒什麼牛逼的地方,和其他編輯器一樣就是編輯檔案嘛”
愛不釋手,像情人一樣
精益求精的你不滿足於無休無止的簡單操作, 冗長而乏味,有沒有更好的辦法可以四兩拔斤? 你在第二階段由於熟練操作而塵封已久的大腦突然開始運作.每一次的文本編輯體驗都妙趣橫生高潮迭起. 你的頭腦因為要用Vim完成高效的編輯而高度緊張興奮。就像和情人在一起一樣,你會覺得它太美妙啦!!
學習實戰
不管多少想法,最終必須得付之實踐才有效果。vim學習更是如此。它必須大量反覆的練習實戰,直到已經成為一種本能反應。然後才能解決一開始的困境。網上有很多種實踐的方式,不過劃分比較細,可能不太適合像我這種懶的人。所以我只是簡單的劃分兩個實戰階段。第一階段主要是以苦練為主,加上習慣的練習。第二階段是基於第一階段的反思總結強化。
從陌生到熟悉
這個階段主要是練,所以沒什麼好說的。第一個是我要實戰的計劃,後二個是我要實戰培養的習慣。暫時不會展示記敘
練習vimtutor
必須完整的練vimtutor 3次以上。練到可以通過分屏,左邊看tutor文檔右邊操作不會斷。練到能自己畫出vim的操作思維導圖
隨時看協助文檔
協助文檔太強大了!!! :help everything。養成習慣有任何不清楚的地方都看help一下,通過help去處理細節問題。
無時不刻使用vim
不管你工作的系統是什麼,都必須無時不刻使用vim。特別是對於windows的使用者,請裝一個gvim。
從熟悉到精通
這個也是本系列文章的主體內容。通過記敘的方式,把學習vim的過程和感悟記錄下來。
具體準備劃分成如下幾塊去展開進行。更細的,請關注後續更新的文章。每一塊可能會根據其結構更新苦幹文章。
vim涉及到的概念
vim涉及很多文本操作概念文件,設計理念等,這些概念適合用整個vim操作。所以首先要做的就是把概念弄清楚,更多的是鍛煉思維習慣。
vim常用模式經典操作
基於統一概念對常用的4種模式裡面的經典操作逐一記敘,讓平常的文本編輯重複操作徹底消除
讓vim更懂你
每個人的習慣,以及工作情境(有的編寫js,html,python,shell等)都不一樣。所以除了文本編輯以外,還會外掛程式和配置,這些會讓我們使用起來更安逸。進一步消除更多的重複工作,消除重複由人手設定引起的垃圾重複時間
祝願
祝願每一個菜鳥vimer都能儘快成為vimer大神,享受神器帶來的快感!!!!
菜鳥vimer成長記——第0章、我眼中的vim學習