通过配置vim的启动脚本 .vimrc来实现,代码如下:
1:
2: :inoremap ( ()<ESC>i
3: :inoremap ) <c-r>=ClosePair(')')<CR>
4: :inoremap { {<ESC>o <ESC>o}<ESC>ka
5: :inoremap } <c-r>=ClosePair('}')<CR>
6: :inoremap [ []<ESC>i
7: :inoremap ] <c-r>=ClosePair(']')<CR>
8: :inoremap < <><ESC>i
9: :inoremap > <c-r>=ClosePair('>')<CR>
10: :inoremap " ""<ESC>i
11: :inoremap ' ''<ESC>i
12:
13: function ClosePair(char)
14: if getline('.')[col('.') - 1] == a:char
15: return "/<Right>"
16: else
17: return a:char
18: endif
19: endf
代码说明:
实现的功能主要有( [ { ‘ “ 自动补全。( [ ‘ “ 补全后光标在中间,{补全时插入一个空行,并把光标置于空行,并自动缩进。
inoremap命令实现插入模式下的按键映射。