您的位置:首页 > 其它

Vim 中实现括号自动补全

2011-03-02 18:39 169 查看
通过配置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命令实现插入模式下的按键映射。
参考资料:http://blog.csdn.net/firebird321/archive/2009/10/21/4710934.aspx
http://www.ibm.com/developerworks/cn/linux/l-vim-script-1/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: