Vim設置括號自動補全和快速跳出


一、設置括號自動補全

inoremap ' ''<ESC>i
inoremap " ""<ESC>i
inoremap ( ()<ESC>i
inoremap [ []<ESC>i
inoremap { {<CR>}<ESC>O

其中花括號{設置,自動補全並換行縮進,這在寫函數的時候或語句塊的時候特別有用。

注:inoremap { {}<ESC>i<CR><ESC>V<O

這句在我的環境中有問題,后來改為

inoremap { {<CR>}<ESC>O

參考:

http://blog.csdn.net/dark_fire/article/details/41970477

http://www.cnblogs.com/lovepurple/p/3373959.html

二、設置自動跳出自動補全的括號

"設置跳出自動補全的括號
func SkipPair()  
    if getline('.')[col('.') - 1] == ')' || getline('.')[col('.') - 1] == ']' || getline('.')[col('.') - 1] == '"' || getline('.')[col('.') - 1] == "'" || getline('.')[col('.') - 1] == '}'  
        return "\<ESC>la"  
    else  
        return "\t"  
    endif  
endfunc  
" 將tab鍵綁定為跳出括號  
inoremap <TAB> <c-r>=SkipPair()<CR>

 參考:http://blog.csdn.net/larrygoode/article/details/12377977

三、按鍵映射

主要有map,noremap,unmap,mapclear四個 命令,並且有四個前綴i,c,n,v修飾

 

nore

表示非遞歸,見下面的介紹

n

表示在普通模式下生效

v

表示在可視模式下生效

i

表示在插入模式下生效

c

表示在命令行模式下生效

 

map

表示遞歸的映射

unmap

表示刪除某個映射

mapclear

表示清楚映射

 

常用命令:

:map :noremap :unmap :mapclear
:nmap :nnoremap :nunmap :nmapclear
:vmap :vnoremap :vunmap :vmapclear
:imap :inoremap :iunmap :imapclear
:cmap :cnoremap :cunmap :cmapclear

參考:http://blog.163.com/lgh_2002/blog/static/44017526201111503947906/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM