原文鏈接:https://zhang35.coding.me/2018-vim-8-1.html
Vim是一個文本編輯器,遵循程序員的“極懶”原則:能用鍵盤就不用鼠標,能敲一次鍵盤解決就絕不敲第二次,手指能在近處就絕不挪遠。

Vim

加過插件的Vim
第一次見我哥用,我問他不用鼠標怎么移動光標呢?他給我演示了 行號+G 直接跳到某一行(想象一下不用騰出手挪鼠標,十指保持在鍵盤上飛舞的效率)。研三做項目時,國科畢業(yè)的博士師兄推薦用Vim,買了教材——《Vim 實用技巧》(Practice Vim),自此入坑,至今已三年。Vim虐我千百遍,我待Vim如初戀。
Vim極度高效優(yōu)雅,比如想要刪除一行文字,普通編輯器需要拿鼠標涂黑一整行再按退格,而Vim只需要按“dd”;再比如想要另起一行插入文字,普通編輯器需要拿鼠標找到當前行末尾按回車,而Vim只需要按“o”。
和學Ps一樣,下決心學Vim已經不下5次了,這次目標是“從入門到精通”。(入門的話,強烈推薦上述教材,它不僅教了“術”,更是教了“道”)
4個模式
vim有4個模式:
- 普通模式 (Normal-mode) :鍵盤所有鍵都成了快捷鍵,平時最常保持的模式。如同畫家作畫,更多的是構思、尋找位置,動筆(插入模式)只是最后一個步驟。
- 插入模式 (Insert-mode):和普通文本編輯器一樣,輸入什么就是什么。
- 命令模式 (Command-mode):普通模式下輸入“:”即進入,能執(zhí)行命令行。
- 可視模式 (Visual-mode):相當于普通文本編輯器下的“涂黑”,先選范圍后編輯。
Vim的操作清單如下(手動微笑):

vim_cheat_sheet_for_programmers
這些快捷鍵通過一系列排列組合,能產生強大的效果。
兩種操作邏輯
動作+范圍
普通模式下,先輸入動作的快捷鍵,比如d(刪除),c(刪除并插入),y(復制),p(粘貼)等。
再輸入范圍,比如w(當前字符后面的單詞),aw(當前字符所在的整個單詞,包含空格),iw(當前字符所在的整個單詞,不空格),即可形成完整的指令。
組合命令如:
ciw :清除當前單詞(不含后邊空格),并進入插入模式。
c指change,i指inner,w指word。
范圍+動作
可視模式下選中的內容,相當于普通文本編輯器的“涂黑”。先選擇范圍后再按動作鍵,即可形成指令。
常用指令
網上找到的指令速記思維導圖:

圖片來自網絡
要熟練掌握這些指令,無它,唯有多記多用。