使用java完成Omni

时间:2014-05-11 13:20:30

标签: java vim

我基本上习惯于编写C ++程序,并且我使用了OmimCppComplete和vim。它工作正常,我很高兴。最近我开始学习java,所以我从这里下载了javacomplete http://www.vim.org/scripts/script.php?script_id=1785。现在的问题是当我使用“。”完成任何不显示任何弹出窗口的类或包。但是当我使用Cx Co时,它正在工作。但是,当我按下“。”时,OmniCppComplete就会正常工作。在任何类或命名空间上。我在javacomplete中缺少什么?我将如何使用“。”工作?请帮忙。

2 个答案:

答案 0 :(得分:1)

自动完成功能不是内置功能。你需要一个插件。大多数自动完成插件或多或少与语言无关,而一些特定于语言的插件(如OmniCppComplete)可以免费自动完成。

如果您已经阅读过OmniCppComplete的文档,那么您知道您习惯使用的自动完成功能是保留给该插件的,并且您已经(通过自己)查找通用自动完成插件,因为javacomplete不执行自动完成。

在vim.org上说...

答案 1 :(得分:1)

完成插件为您提供来源(通常是当前文件中的类,方法和变量名称)。他们仍然必须被触发。由于大多数插件使用Vim的 omni completion 扩展点,因此在插入模式下该触发器为<C-x><C-o>

OmniCppComplete插件似乎在.上添加了自定义完成触发器(因为这对C ++很有意义)。 Java挂件并没有。如果您希望获得一致的行为,请:

  • 自己为Java完成添加.完成触发器(从其他插件获取实现提示)
  • 向插件的authro提交增强请求
  • 切换到一致处理多种语言的通用完成插件