如何根据缓冲区中已有的单词使Vim自动完成单词?
如何像在Emacs(M-%)中一样,根据缓冲区中已找到的单词使Vim自动完成单词?
答案 0 :(得分:4)
C-x C-n和C-x C-p在插入模式(下一个和上一个)中执行此操作
答案 1 :(得分:4)
<C-n>
和<C-p>
将完成所有缓冲区中的内容。 <C-x><C-n>
和<C-x><C-p>
会完全按照您的要求进行操作,并且只会为当前缓冲区中的令牌提供补全。但是,Vim中有很多完成选项。要了解有关它们的更多信息,建议您阅读关于:help ins-completion
的帮助部分(这称为插入模式完成)。
Vim中的其他一些完成选项包括<C-x><C-f>
来完成文件路径,<C-x><C-l>
来完成整行。
答案 2 :(得分:0)
另一种解决方案是使用带有自动弹出窗口的插件: neocomplcache plugin
它通过在当前缓冲区中维护关键字的缓存来提供关键字完成系统。 neocomplcache可以轻松进行自定义,并且具有比Vim的标准完成功能更多的功能。