请教一个关于VIM全能补全的问题

Vim、Emacs配置和使用
回复
emptykid
帖子: 20
注册时间: 2009-12-02 13:11
送出感谢: 0
接收感谢: 0

请教一个关于VIM全能补全的问题

#1

帖子 emptykid » 2010-11-14 13:38

我在试图自行编写一个类似autocomplete插件的东西
要实现的效果是:
在inert模式,我输入lo
popup menu里头能够出对应的补全提示列表
love
lolly
lo...

我采用全能补全(omni)的方式来实现,但是omni补全需要手工通过命令<C-x><C-o>来调用
所以我作了一个键映射,把用户输入的所字母键都映射到那个调用命令
inoremap <buffer> %s %s<C-x><C-o>
其中%s是遍历所有a-z0-9之后的内容
这样,基本能用
但是发现一个致命的地方
就是全能补全,它作的不仅仅是列出匹配的项,而且还会把第一项插入到用户输入的光标位置
即我输入lo的时候,该单词就立马变成love了

我再想是不是有某个选项可以控制这个自动插入的动作,找了好半天也没找着
但是发现acp这个插件,它是能够作到这点的,但是也没有从它的代码里头看到那个地方弄的

求有经验的大虾指导!

非常感激!!
回复

回到 “Vim和Emacs”