diff options
Diffstat (limited to 'vimrcs/match.vim')
-rw-r--r-- | vimrcs/match.vim | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/vimrcs/match.vim b/vimrcs/match.vim new file mode 100644 index 0000000..897b3c7 --- /dev/null +++ b/vimrcs/match.vim | |||
@@ -0,0 +1,15 @@ | |||
1 | " 各类符号自动匹配 | ||
2 | :inoremap ( ()<ESC>i | ||
3 | :inoremap ) <c-r>=ClosePair(')')<CR> | ||
4 | :inoremap [ []<ESC>i | ||
5 | :inoremap ] <c-r>=ClosePair(']')<CR> | ||
6 | :inoremap { {}<ESC>i | ||
7 | :inoremap } <c-r>=ClosePair('}')<CR> | ||
8 | |||
9 | function ClosePair(char) | ||
10 | if getline('.')[col('.') - 1] == a:char | ||
11 | return "\<Right>" | ||
12 | else | ||
13 | return a:char | ||
14 | endif | ||
15 | endfunction | ||