VIM中的自动代码完成?

时间:2010-01-18 02:20:44

标签: linux vim code-completion

VIM可以像Eclipse一样自动执行代码吗?通常我从Windows笔记本电脑通过Putty连接到我的Linux开发服务器。所以,我希望我能找到一个VIM的插件,当我可以在Putty中键入变量名时,可以执行自动完成等下拉菜单,这可能吗?

谢谢!

4 个答案:

答案 0 :(得分:15)

是的,从某种意义上说 - Vim有Completion个命令可以帮助你自动找到部分变量名的完成文本。

简而言之,键入部分变量名称,然后按 Ctrl P 搜索匹配的名称。

答案 1 :(得分:3)

是的,这是可能的。 Vim已经具有内置的一般代码完成风格,名称为Omni completion。

默认安装不允许自动调用,但如果安装this script,则允许自动调用。

请注意,根据您将使用的语言,您可能需要其他脚本来处理该语言的自动完成,甚至可能需要更改自动调用脚本以识别何时调用完成。既然你还没有说过你想要使用的编程语言,那么如果你需要更多的编程语言就很难说,但我建议你查看帮助文件。

答案 2 :(得分:2)

尝试使用http://eclim.org/ - 通过插件将Vclipse核心与VIM结合使用。

要启动完整的ecplise核心,但要完成C / C ++成员,请尝试 http://www.vim.org/scripts/script.php?script_id=1520

-   Complete namespaces, classes, structs and union members. 
-   Complete inherited members for classes and structs
(single and multiple inheritance). 
-   Complete attribute members eg: myObject->_child->_child etc...

答案 3 :(得分:0)

目前vim对自动代码完成功能没有plugins,我使用的是youcompleteme插件,并结合了vim-snippetsultisnipssupertab个插件。您可以使用片段(可以扩展为完整代码的小文本)选项卡完成代码,并支持大量语言。

对于简单的文本文件,还会为您之前键入的单词提供下拉菜单。