LinuxGem
此处为老的 LinuxGem,新版 LinuxGem 请移步 www.linuxgem.org

在 Vim 中实现括号自动补全

galeki posted @ 2007年10月03日 14:36 in 文档编辑与排版 with tags 自动补全 vim , 5665 阅读

流行的 IDE 的编辑器,诸如 Eclipse,都提供了括号自动补全的功能,相当的方便。可惜 Vim 默认情况下并没有提供这样的功能,那就只有自己来写了。

将下面的代码加入到 ~/.vimrc 中,重启 Vim,即可:

:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {}<ESC>i
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap < <><ESC>i
:inoremap > <c-r>=ClosePair('>')<CR>

function ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "\<Right>"
else
return a:char
endif
endf
这样,写代码的时候不再担心会丢掉右边的括号了,尤其是函数嵌套的时候

转自: http://blog.linuxgem.org/liulang/show/262.html

&#27969;&#28010; 说:
2007年10月04日 16:55 hia,hia,hia~~~
momoc 说:
2007年10月13日 07:56 good ,i loooooooooooooove you
hzht 说:
2007年12月15日 19:04 这功能太帅了
Border 说:
2008年3月30日 06:44 cooool。。。

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter