vim 配置詳解
一、VIM的設定檔 1、VIM允許使用者自己定義相關的配置來顯示文本,那麼應該怎麼設定呢?VIM運行時會讀這兩個設定檔 (1)家目錄下的 ".exrc" 設定檔,該設定檔針對家目錄的使用者生效(個人的) (2)/etc/vimrc設定檔,該設定檔針對所有的使用者生效(全域的) 2、下列就以 "使用者自訂方式" 來講述如何配置VIM,配置主要有以下幾個步驟 1)第一步:在自己的家目錄(/home/XXX)下建立一個名為 ".exrc"的檔案 [root@Mylinux ~] touch .exrc 2)第二步:用VIM編輯器開啟 ".exrc ",寫入相關VIM配置選項,常見的配置如以下表格 [root@Mylinux ~] vim .exrc
VIM設定檔常用的相關配置選項 |
set nocompatible |
不要使用vi的鍵盤模式,而是vim自己的 |
syntax on |
讓文法高亮顯示 |
set history=100 |
history檔案中需 要記錄的行數 |
set nobackup |
我不習慣每次都多一個~尾碼的備份檔案 |
set autoindent shiftwidth=4 |
啟用自動縮排,並設定自動縮排的寬度為4 |
set background=dark |
讓深色的字型高亮顯示(例如:注釋等) |
set incsearch |
搜尋時,輸入的詞句的逐字元高亮 |
set hlsearch |
讓尋找到的字串高亮顯示(:nohlsearch可關閉) |
set tabstop=4 |
讓tab變成4個字元的寬度 |
set shiftround |
使用 >> 或 << 時, 依shiftwidth 調整寬度 |
set nu |
顯示行號 |
set encoding=utf-8 |
顯示所用的編碼(取決於“LANG環境變數”) |
set fileencodings=utf-8, latin1 |
vim自動判斷檔案的編 碼時嘗試的順序 (注意:vim寫入檔案時採用的編碼,不應該在vimrc或.exrc中 設定,負載檔案後vim會根據判斷結果自動化佈建這個變數,只有當你想轉換檔的儲存編碼時才修改這個變數並存檔) |
set termencoding=utf-8 |
輸出到客戶終端(Term)採用的編碼類別型 |
set ambiwidth=double |
讓漢字以2個寬度顯示 |
set clipboard+=unnamed |
與windows共用剪貼簿 |
filetype on |
偵測檔案類型 |
filetype plugin on |
載入檔案類型外掛程式 |
filetype indent on |
為特定檔案類型載入相關縮排檔案 |
set iskeyword+=_,$,@,%,#,- |
帶有如下符號的單詞不要被換行分割 |
set laststatus=2 |
總是顯示狀態列 |
set statusline=%F%m%r%h%w/[POS=%l,%v][%p%%]/ / / /Encoding:/ %{(&fenc==/"/")?&enc:&fenc}%{(&bomb?/"[BOM]/":/"/")}/ / / /%{ strftime(/"%Y-%m-%d/ -/ %H:%M/")} |
VIM狀態行顯示的內容(包括檔案類型和解碼) |
set smartindent |
為C程式提供自動縮排 |
set cindent |
使用C風格的縮排方案 |
set ignorecase set list
|
在搜尋的時候忽略大小寫 顯示製表位(ctrl+i)和 行尾標誌($) |
colorscheme desert colorscheme evening colorscheme default |
vim三種色彩配置 |
|
=====================================================================
=====================================================================
1. 摺疊方式 可用選項 'foldmethod' 來設定摺疊方式:set fdm=*****。 有 6 種方法來選定摺疊: manual 手工定義摺疊 indent 更多的縮排表示更進階別的摺疊 expr 用運算式來定義摺疊 syntax 用文法高亮來定義摺疊 diff 對沒有更改的文本進行摺疊 marker 對文中的標誌摺疊 注意,每一種摺疊方式不相容,如不能即用expr又用marker方式,我主要輪流使用indent和marker方式進行摺疊。 使用時,用:set fdm=marker 命令來設定成marker摺疊方式(fdm是foldmethod的縮寫)。 要使每次開啟vim時摺疊都生效,則在.vimrc檔案中添加設定,如添加:set fdm=syntax,就像添加其它的初始化設定一樣。 2. 摺疊命令 選取了摺疊方式後,我們就可以對某些代碼實施我們需要的摺疊了,由於我使用indent和marker稍微多一些,故以它們的使用為例: 如果使用了indent方式,vim會自動的對大括弧的中間部分進行摺疊,我們可以直接使用這些現成的摺疊成果。 在可摺疊處(大括弧中間): zc 摺疊 zC 對所在範圍內所有嵌套的摺疊點進行摺疊 zo 展開摺疊 zO 對所在範圍內所有嵌套的摺疊點展開 [z 到當前開啟的摺疊的開始處。 ]z 到當前開啟的摺疊的末尾處。 zj 向下移動。到達下一個摺疊的開始處。關閉的摺疊也被計入。 zk 向上移動到前一摺疊的結束處。關閉的摺疊也被計入。 當使用marker方式時,需要用標計來標識代碼的摺疊,系統預設是{{{和}}},最好不要改動之:) 我們可以使用下面的命令來建立和刪除摺疊: zf 建立摺疊,比如在marker方式下: zf56G,建立從當前行起到56行的程式碼摺疊功能; 10zf或10zf+或zf10↓,建立從當前行起到後10行的程式碼摺疊功能。 10zf-或zf10↑,建立從當前行起到之前10行的程式碼摺疊功能。 在括弧處zf%,建立從當前行起到對應的匹配的括弧上去((),{},[],<>等)。 zd 刪除 (delete) 在游標下的摺疊。僅當 'foldmethod' 設為 "manual" 或 "marker" 時有效。 zD 迴圈刪除 (Delete) 游標下的摺疊,即嵌套刪除摺疊。 僅當 'foldmethod' 設為 "manual" 或 "marker" 時有效。 zE 除去 (Eliminate) 視窗裡“所有”的摺疊。 僅當 'foldmethod' 設為 "manual" 或 "marker" 時有效。 |
==============================================
點綴娛樂 點綴娛樂 點綴娛樂 點綴娛樂 點綴娛樂 點綴娛樂 點綴娛樂 點綴娛樂
==============================================