在某些字符上显示Vim omnicomplete而不是Ctrl-X Ctrl-O?

时间:2010-07-01 18:45:29

标签: html css vim editor text-editor

在Vim 7中,Ctrl-X Ctrl-O显示了可能值的列表,但是当我经常使用自动完成功能时,我发现这个键序列太长。例如,在HTML文件中,我想在输入<之后自动弹出列表。接着是一两个字母。在CSS文件中,我想在点击“:”键后看到列表。有没有办法设置它?

2 个答案:

答案 0 :(得分:8)

要激活输入“:”的omnicompletion,您可以使用 以下映射。

imap : :<c-x><c-o>

缺点是每次按“:”omnicompletion都会 即使在评论或任何其他上下文中键入“:”,也会被激活 你不想要omnicompletion。

我已将ctrl-space映射到活动的omnicompletion:

imap <c-space> <c-x><c-o>

这使我可以选择在需要时激活omni。

答案 1 :(得分:1)

我发现更容易的另一个选择是,当您想要自动完成时按两次标签,而对于常规标签则按一次。 将以下行添加到〜/ .vimrc

imap <tab><tab> <c-x><c-o>