vim簡單、高效,是一款極為高效的編輯器。是linux下進行,編輯文件,寫郵件,寫部落格,和程式設計的選擇。vim具有優秀的可配置性,以及強大的 外掛程式支援。適當的配置和恰當的外掛程式選擇,可以代替windows下的editplus_ultraedit_sourceinsight的組合。
代替editplus
在接觸vim之前,最喜歡的文體編輯工具是editplus。editplus是乙個非常小巧,穩定,方便的工具。editplus具有以下優點
介面美觀,優雅
支援大部分的語法高亮顯示
支援自定義工具配置和自定義巨集
捕捉控制台輸出結果
自動縮排
支援拼寫檢查
支援函式列表檢視
括號配對
**摺疊
通過配置,vim也會實現上述列表中所有的功能。
基礎配置
中文支援配置
vim支援unicode,非latin語系的多位元組編碼的文字編輯器,但和一般的linux一樣,編碼的設定比較麻煩。vim的預設編碼是系統所 使用的編碼,並不一定是unicode,在中文windows中是cp936,在中文linux中一般是ucs-cn。如果在沒有gui的vim,首先確 保term支援unicode,以顯示和編輯中文編碼的字元。在設定文字編碼時,要分別對termencoding,fileencoding,以及 encoding進行設定。
termencoding是輸入的字元編碼的設定,一般為系統的編碼(windows下的cp936,linux下的usc-cn)。自動縮排和tab設定而encoding的預設值就是系統編碼,所以可先設定
set termencoding=$encoding
encoding是vim內部的編碼,包括文字處理,及顯示。unicode是編碼區最全的編碼,所以可以設定為
set encoding=utf-8
fileencoding是支援的檔案編碼格式,可使用多種編碼以支援各種系統共享的檔案,所以可以設定為
set fileencoding=euc-cn,cp936,utf-8,gbk
下面抄錄的這段配置可以用於cjk的編碼設定。
if has("multi_byte")
if getfsize(expand("%")) > 0
set fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1
else
set fileencodings=cp936,big5,euc-jp,euc-kr,latin1
endif
if v:lang =~ "^zh_cn"
set termencoding=$encoding
set encoding=utf-8
set fileencoding=cp936,euc-cn
elseif v:lang =~ "^zh_tw"
set encoding=big5
set termencoding=big5
set fileencoding=big5
elseif v:lang =~ "^ko"
set encoding=euc-kr
set termencoding=euc-kr
set fileencoding=euc-kr
elseif v:lang =~ "^ja_jp"
set encoding=euc-jp
set termencoding=euc-jp
set fileencoding=euc-jp
endif
if v:lang =~ "utf8" || v:lang =~ "utf-8$"
set encoding=utf-8
set termencoding=utf-8
set fileencoding=utf-8
endif
else
echoerr "sorry, this version of vim was not complied with multi-type"
endif
設定自動縮排多視窗和tab頁面快鍵設定vim支援多視窗顯示,多tab頁面編輯。乙個tab頁面可以包含多個視窗。tab頁面的轉換用gt(向前),gt(向後)。set ai
設定乙個tab鍵所插入的空格數。
set ts=4
設定自動縮排所插入的空格數。
set sw
設定在行首處tab鍵所插入的空格數參照shiftwidth(sw)的值而不是tabstop(ts)的值。
set smarttab
設定根據檔案型別縮排
filetyp plugin indent on
設定根據c語法縮排的模式
set cino=:0g0t0(sus
設定視窗跳轉的快捷鍵代替sourceinsight或者其它idemap j
map k
map h
map l
通過配置和外掛程式的使用可以使vim成為優秀的程式設計工具。
基本配置
設定顯示行號外掛程式配置set nu
設定高亮顯示當前行
set cul
"tag listlet tlist_use_right_window=1
let tlist_file_fold_auto_close=1
"winmanager
let g:winmanagerwindowlayout='fileexplorer|taglist'
nnoremap :wmtoggle
通過配置vim的效果如圖:
Vim使用小結
set fileformat 設定檔案格式 set endofline 設定檔案結束符 set noendofline 取消檔案結束符 set list 進入list mode set nolist 退出list mode s n g 刪除換行符 set textwidth 設定行寬 set tex...
Vim 使用小結(一)
快捷鍵 說明f x 行內,向前搜尋字元x,停在目標字元 f x行內,向後搜尋字元x,停在目標字元 t x行內,向前搜尋字元x,停在目標字元前 t x行內,向後搜尋字元x,停在目標字元後 string 文件內,向前搜尋字串,按enter鍵生效 string 文件內,向後搜尋字串,按enter鍵生效 n...
VIM 命令小結
兩種模式 normal mode 普通模式 insert mode 插入模式 插入模式按 escape進入普通模式,普通模式按i進入插入模式。定位 h 左移.j 下移.k 上移.l 右移 pagedown or ctl f 前滾 pageup or ctl b 後滾 g 最後一行 num gg 到第...