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
参考:
⼆、设置⾃动跳出⾃动补全的括号
"设置跳出⾃动补全的括号
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>
参考:
三、按键映射
主要有map,noremap,unmap,mapclear四个命令,并且有四个前缀i,c,n,v修饰
nore
表⽰⾮递归,见下⾯的介绍
n
表⽰在普通模式下⽣效
v
表⽰在可视模式下⽣效
i
表⽰在插⼊模式下⽣效
c
表⽰在命令⾏模式下⽣效
map
表⽰递归的映射
unmap
表⽰删除某个映射
mapclear
vim命令退出插入模式表⽰清楚映射
常⽤命令:
:map :noremap :unmap :mapclear
:nmap :nnoremap :nunmap :nmapclear :vmap :vnoremap :vunmap :vmapclear :imap :inoremap :iunmap :imapclear :cmap :cnoremap :cunmap :cmapclear 参考:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。