分享我的vim設定檔
最近開始從純文字的vim轉移到有GUI的MacVim,才發現我已經用了15年的vim設定檔不知不覺變得又亂又肥。有一大堆plugin都是放進去就忘記了,或是當初為了解決vim 5.x或6.x的問題,到了vim7後都變成多餘的垃圾。vim這種歷久彌新的編輯器,特點就是客製化功能特別強,每個人都有不同的快速鍵設定或偏好的plugin,但用了十幾年後,我發現真正重要和常用的功能還是那些基本的編輯功能:輸入、移動、複製、剪下、貼上、搜尋、視窗/檔案/分頁切換。(也就是我在給程式設計師的Vim入門圖解說明中畫的那些)其他很多看似很酷的plugin,常常一開始看到覺得很有趣,但裝進去因為很少會用到,時間久了也就忘記它的存在。
因此,我決定趁這個機會重新整理我的vim設定檔,從一個完全空白的設定一行一行把我原本有用的設定加進去並寫註解,並只留下我真正常用,不需要記特殊快速鍵的plugin。本來以為現在還用vim的人不多,但在我的Facebook和Plurk上做了個簡單的調查後,沒想到用vim的人還真不少。(當然也有很多是受我影響才開始用vim的XD)於是我也想趁這個機會把我的設定檔分享出來,有興趣的人可以自由拿去參考或改寫成適合自己習慣的設定。
我把我的vimrc放在github上,安裝方法也寫在README裡了。
經過了重新整理,現在我的vim plugin都是透過pathogen.vim來統一管理。每個plugin都可以獨立安裝在~/.vim/bundle下,而不用散佈像以前一樣散佈在~/.vim/{plugin,doc,ftplugin}等等的眾多目錄下。在這種新架構下,要升級或刪除plugin都變得很容易,因為所有跟該plugin相關的檔案都只在同一個目錄下。利用這個特點,我也把plugin都裝成git submodule來管理,這樣日後plugin有新版本推出時,只要一個git pull
就能升級完畢。具體利用pathogen和git來管理vim plugin的方式可以參考這篇文章:Synchronizing plugins with git submodules and pathogen。
這個vimrc會隨著我的使用持續更新,歡迎大家自由使用或是fork出自己的版本,也歡迎建議好用的plugin。
以下列出一些重要的自訂快速鍵:
分割視窗(splits) | |
---|---|
Ctrl-j
|
跳到下面的分割窗並放到最大 |
Ctrl-k
|
跳到上面的分割窗並放到最大 |
Ctrl-h
|
跳到左邊的分割窗並放到最大 |
Ctrl-l
|
跳到右邊的分割窗並放到最大 |
分頁(tabs) | |
Ctrl-t Ctrl-t
|
開新分頁 |
Ctrl-t Ctrl-w
|
關閉分頁 |
H
|
前一個分頁* |
L
|
下一個分頁* |
一般設定 | |
,/
|
關閉高亮搜尋標記 |
,p
|
切換貼上模式 (paste mode) |
:cd.
|
切換目錄至目前檔案所在處 |
搜尋/取代 | |
Cmd-t或,t
|
搜尋/跳到任意檔案 |
,r
|
在所有開啟檔案中取代目前的word |
*註:和vim原本的按鍵H(螢幕頂端), L(螢幕底部)衝突,有需要用這兩個鍵的請自行修改。