< 因爲咱們的需求是在不斷地變化的,因此呢,我但願這篇文章可以根據個人需求不斷地寫下去。vim
通常在文件保存退出之後,再次代開的時候,都會產生一個swp文件,而後vim會詢問你這個swp文件已經存在,要不要編輯?這樣真的好煩。爲了不這個問題,能夠在vimrc裏面設置一句話,就能夠徹底解決這個問題。可是你必定要注意,這樣你將會失去備份文件,不能夠大量使用,推薦用下面的方法。將備份文件放到另外一個目錄下面。瀏覽器
set noswapfile
Backups字體
若是你保持開着一個vim進程, 而且在其中更改了文件, vim會建立一個 "備份"(譯註: 我想做者想說的是'swap'交換文件) 文件. 而後當你從另外一個不一樣的vim會話中打開文件的時候, vim就會抱怨你在謀略編輯一個已經正在被編輯的文件. 此 '備份' 文件是經過在當前目錄下的文件(名)後面追加一個 '~'符號來建立的. 這在你想要瀏覽器目錄的同時會變得很煩, 因此我應用瞭如下的設置來移動備份文件到/tmp目錄中.ui
set backup "make backup file set backupdir=~/.vim/back "where to put backup files set directory=~/.vim/tmp "directory to place swap file in
儘管這可能很惹人煩, 但總比丟失掉大量的已編輯但未保存的工做成果要好.若是你正常退出之後,swap文件將會自動刪除,而不會佔用其內存空間。因此這個設置真的是防止文件丟失的好方法,推薦你們使用。spa
Colors命令行
colorscheme badwolf設置顏色
語法高亮code
syntax enable " enable syntax processing.
另外, 許多 vim 中的設置既有長名又有短名. 例如 background 和 bg 是同樣的. 爲了此後的可讀性, 我強烈建議使用長名.blog
Spaces & Tabs.進程
set tabstop=4 " number of visual spaces per TAB
tabstop 就是視覺上顯示的一個
set softtabstop=4 " number of spaces in tab when editing
編輯時一個
set expandtab " tabs are spaces
expandtab 會將 tap鍵轉換爲多個空格. 僅此而已. 因此 tap鍵僅僅成爲了 "插入4個空格" 的快捷鍵.
UI Config
set number " show line numbers
顯示行號, 不解釋.
set showcmd " show command in bottom bar
showcmd 顯示在最右下角展現最近輸入的命令.
set cursorline " highlight current linecursorline 會突出顯示(或加下劃線, 取決於你的本色方案)你的光標當前所在水平行. 我發覺當你 vim 的多個窗口來回切換或離開 vim 後再切換回來, 這樣更容易找到離開時那一行.
自動補全
set wildmenu " visual autocomplete for command menu
這是一個至關酷的特性, 我之前都不知道Vim有它. 你知道 Vim 會自動補全相似文件名的東西, 若是你開啓了 wildmenu, 你就能夠循環遍歷它們.
簡而言之,就是在命令行,tab鍵可以補全列出全部的命令。
Searching
set incsearch " search as characters are entered set hlsearch " highlight matches set ignorecase map <F2><space> :nohlsearch
這些設置是自解釋的. 它們使得搜索更棒.vim 從搜索開始直到你下一個搜索期間會保持高亮, 或者你能夠手動中止舊有的搜索使用 :nohlsearch. 或者是入上面所述將F2鍵映射成這個命令。
解決兼容性問題
set nocompatible "去掉有關vi一致性的模式,兼容解決一些兼容性問題
設置字體
set guifontset= set guifont=Consolas:h12
不設定在插入狀態下沒法用退格鍵和delete鍵刪除回車符
set backspace=indent,eol,start
在vim窗口的左下角顯示模式,沒有顯示時表明的是常規模式。
set showmode
如今 TAB 鍵顯示爲 ^I,而 $顯示在每行的結尾,以便你能找到可能會被你忽略的空白字符在哪裏。
這樣作的一個缺點是在有不少 TAB 的時候看起來很醜。若是你使用一個有顏色的終端,或者使用 GUI 模式,Vim 能夠用高亮顯示空格和TAB。
set list set listchars=tab:>-,trail:-如今,TAB會被顯示成 ">—" 而行尾多餘的空白字符顯示成 "-"。看起來好多了,是吧?
在此以後,若是在一行的開頭輸入空格或製表符,那麼後續的新行將會縮進到相同的位置。
set autoindent
自動切換當前目錄爲當前文件所在的目錄
set autochdir
設置行和列高亮,並設置高亮的顏色
set cursorcolumn hi cursorcolumn guibg=darkred set cursorline hi cursorline guibg=darkred
只編輯UTF-8的中文文件
set fileencodings=utf-8
鍵盤鍵的映射,將gb快捷鍵映射爲:bd回車鍵。即新建一個vim窗口。
map gb :bd<CR>