# how to vimrc
在炮製你自己的.vimrc配置時, 這裡只有乙個原則.
不要把任何你不理解的一行放到你的vimrc中.
網際網路上有以噸計的入門手冊, 諸如這篇文章. 它們之中包含各種令人驚嘆的hack技巧, 這可以記你的vim更好, 但為了讓你的環境更好完全從別人那兒照搬那些配置, 完全是 **最糟糕** 的做法.
真真切切地花一些時間來學習你的編輯器的構造, 其價值無可估量. 從投影儀上手抄下來通常會有且於增多的資訊逐漸保留, 同樣的道理, 將特性乙個乙個地新增到你的vimrc有助於提高你對vim的總體理解程度.
因此, 這篇文章餘下部分將會是我來解釋我當前vimrc中的全盤使用的每一行, 希望你能在其中找到你此前沒有見到的技巧. 但, 我的vimrc離完美還差得遠. 我也一直在尋找可以使我的環境更好的東西新增進來, 所以如果你認為我遺漏了什麼重要的東西, 敬請告之: [@duogblackio](
我將按邏輯分成幾個部分
- 顏色
- 空格與製表
- ui配置
- 搜尋
- 摺疊
- 自定義移動
- 自定義leader按鍵
- ctrlp設定
- 啟動配置
- tmux配置
- autogroups
- 備份
- 自定義函式
- 組織
- 摺疊起來
這篇文章幾乎肯定會落後於我最近的vimrc, 你可以在 [github]( 上找到最新的vimrc版本.
# colors
colorscheme badwolf " awesome colorscheme
顏色! 配色方案是主觀的, 我當前是安頓在steve losh所寫的badwolf上了. 我發現solarized難以至信的完整, 但也發現就我的品味而言它也那麼點兒乏味. 我的大量的時間也是和 molokai 度過的. 並且我仍然認為 molokai 是乙個非常好的配色方案, 只是當前更偏好 badwolf.
繼續前進
syntax enable " enable syntax processing
注釋足以說清它的意思. 我將借這點時間, 盡可能地新增注釋, 以避免你的vimrc沒有此中的任何一行. 如果你像我一樣, 檔案寫得很長, 基本上你不會一直記住每一行在做什麼, 所以新增注釋有助於你以後能知道這些都是什麼鬼.
另外, 許多 vim 中的設定既有長名又有短名. 例如 background 和 bg 是一樣的. 為了此後的可讀性, 我強烈建議使用長名.
# spaces & tabs
要使 tabs/spaces 能像你期望那樣正常工作, 你必須將如下像咒語一樣的符號, 扔到你的vimrc中. 你可能對這串符號相當困惑, 所以這兒有讓你快速進修的說明.
set tabstop=4 " number of visual spaces per tab
tabstop 就是視覺上顯示的乙個 算作的空格個數. 所以, 當 vim 開啟檔案讀取到乙個 字元時, 就會使用這麼多個空格來顯示 .
set softtabstop=4 " number of spaces in tab when editing
編輯時乙個 算作的空格數. 所以這既是你插入 時插入的空格數, 也是你用 backspace 移除的 (譯註: 連續的) 空格數.
set expandtab " tabs are spaces
expandtab 會將 轉換為多個空格. 僅此而已. 所以 僅僅成為了 "插入4個空格" 的快捷鍵.
(以上幾個配置)一起拿走吧, 這些選項是非常不錯, 對於編輯那些偏好空格而不是 tab的語言, 因為這可以確保不會使用 . 我每天花大多數時間與python與bash打交道, 二者的規範中寫明了要使用空格. 我喜歡它, 因為它意味著我的源**在所有的機器上看起來都是一樣的.
# ui config
這些選項會改變 vim 中那此散亂的視覺材料.
set number " show line numbers
顯示行號, 不解釋.
set showcmd " show command in bottom bar
`showcmd` 顯示在最右下角展示最近輸入的命令. 我雖然在這裡設定了, 但實際上由於我使用powerline外掛程式(稍後我們會涉及到), 所以在我的vim中找不到這一行的.
set cursorline " highlight current line
cursorline 會突出顯示(或加下劃線, 取決於你的本色方案)你的游標當前所在水平行. 我發覺當你 vim 的多個視窗來回切換或離開 vim 後再切換回來, 這樣更容易找到離開時那一行.
filetype indent on " load filetype-specific indent files
這既開啟檔案型別檢測, 又開啟基於此檢測的與語言相關的縮排檔案. 對於我來說, 這意味著, 每當我開啟乙個 \*.py 檔案, python 的縮排檔案即 ~/.vim/indent/python.vim 將會被載入.
set wildmenu " visual autocomplete for command menu
這是乙個相當酷的特性, 我以前都不知道vim有它. 你知道 vim 會自動補全類似檔名的東西, 舉例子, 執行 :e ~/.vim? 那麼它將會提供乙個所有匹配項的圖形選單, 如果你開啟了 wildmenu, 你就可以迴圈遍歷它們.
set lazyredraw " redraw only when we need to.
vim 喜歡重繪螢幕, 即便是在它根本不必這樣做的期間內 – 比如在巨集(回放)的期間. 這告訴 vim 不要費神地在這些場景下重繪螢幕, 以讓巨集更快.
set showmatch " highlight matching
當你的游標移動到 類似圓括號(譯註: <([{都算)字元時, 與之配對的另外乙個也會高亮顯示.
使用 vimrc設定vim編輯器
使用.vimrc設定vim編輯器 問題 編輯配置檔案,使得每次vim開啟檔案時 顯示行號 自動縮排 乙個tab等於4個空格鍵 方案 首先注意此配置檔案預設是不存在的,需要手工建立。建立的位置在家目錄,本題使用者為root,其家目錄為 root 建立的檔案必須命名為 vimrc 需注意是以 開頭的隱藏...
Vimrc 配置檔案 包括GO外掛程式設定
set encoding utf 8 set nobomb set ts 4 set expandtab set autowrite 自動儲存 set autoindent 自動縮排 set background dark set backspace 2 設定退格鍵可用 set completeop...
vimrc入門配置
csharp set number set tabstop 4colorscheme the creator syntax on inoremap jj map nerdtreetoggle nmap ss easymotion s2 set hlsearch set incsearch call ...