寫程式的人
或多或少應該都聽過vim
或是使用vim在開發

對我來說
vim就像是以前念大學時
教科書的上的經典電影
名字呢,是有聽過
但實際上總是用了一下就掰掰
就像那些黑白片一樣
看十分鐘就撐不下去了

人生中第一次使用vim
應該是幫Linux主機設定nginx
那時候我只會兩個指令
一個是i,另一個是:wq
(可能還有一個:q!)
甚至連hjkl都不會
只能老老實實的用方向鍵移動

那時候只是改幾個config做測試
所以對vim也沒有特別深入了解
看到那精美的學習曲線
加上還有其他更重要的東西要研究
就先放到一邊了

後來換了工作
許多同事都推薦在IDE上面使用vim
甚至開了教學
分享最精華的部分

但慚愧如我
每次心血來潮裝完vim之後
依舊被hjkl卡死
不然就是insert/normal mode切換不順
最後的結局
總是默默的再把vim外掛關掉

就這樣斷斷續續了一年
直到最近我對於vim的操作
終於有了新的突破

起源是看了高見龍老師的youtube
即將失傳的古老技藝 vim 簡直是驚為天人

在網路上查資料時
大部分都是教你指令怎麼按
鮮少有從頭到尾介紹vim在幹嘛
難得的是有影片
重點是還免費

甚至還有把CapsLock幹掉
改成Ctrl的這種神奇操作
著實令我大開眼見

有了整體的概念
當然還是需要實際練習
不過我在切換insert/normal時
還是覺得很煩
光是按那個Esc就飽了

雖然有替代方案 Ctrl + [
但手殘如我,常常按錯
直到我把jj map成Esc後
一切豁然開朗
(雖然高見龍老師說他不喜歡)

就像是卡了很久的痰
終於咳出來了一樣
從此使用vim通體舒暢
不用再擔心按錯Ctrl + [
沒事就按個jj保平安

第二個跨過的大坎
就是前面講的hjkl
曾經我試圖去玩 PacVim
或是很多人推薦的 VIM Adventures
但發現都沒啥用
移動起來還是卡成狗

直到我想起同事推薦過的chrome套件
vimium
名字有個vim
應該也可以當作練習

看完教學
又再一次覺得驚為天人
用鍵盤操控網頁的體驗意外的好
按了幾百次的上上下下
讓我終於熟悉hjkl移動了

最後我終於又有勇氣
把IDE的vim外掛裝起來
但這次不一樣的是
我再也沒有把它移除了

甚至因為使用vim的關係
每當手想要離開鍵盤時
都會去查IDE有沒有快捷鍵可以按

不敢說提高多少效率
但是裝逼的程度
絕對是成長百分之兩百

最後附上新買的小鍵盤
在家練習只用主要的鍵盤區
期望有一天
達到不用滑鼠開發的境界