NetBeans IDE自动完成“contains”

9

有没有人知道如何让NetBeans代码自动完成以“包含”而不是“以...开始”进行过滤。

例如,MyClass有getBlaBla(),setBlaBla()和someOtherBlaBla()

我想能够说MyClass.BlaBla并且代码自动完成建议上面的所有三个方法名称。当您不能完全记住方法名称但知道它包含该单词时,这将非常有用。


2
注意:Java的编码规范是以小写字母开头命名方法。 - Puce
2
不错。我感觉可以提出一个功能请求。 - Captain Giraffe
1
你认为这样的自动完成功能有用吗?在我看来,自动完成应该是完整的,而不是猜测的。如果你不记得方法名,可以按Ctrl + Shift + B(转到源代码)然后按Ctrl + Shift + F12(检查成员)。在那里,你可以看到所有的方法并使用通配符进行搜索。 - NullPointer
1
我认为这完全取决于个人喜好。最后一个建议的问题是它需要三倍的努力,你需要离开正在工作的页面的上下文,而当这种情况发生时,我往往会失去我的思路。当你不得不一直这样做时,这就变得有点令人沮丧了。我不会将其设置为默认值,因为它会改变用户习惯的行为,但可以将其作为一个功能。不幸的是,当我的记忆力不太好或者我不太熟悉的API时,它只是一个有用的附加工具。 - Blueberry
2个回答

7

供将来参考,此功能从NetBeans 7.4开始实现,并可在选项中启用:

  1. 在菜单栏中点击工具 -> 选项
  2. 在选项窗口中打开编辑器部分,然后点击代码完成选项卡
  3. 选中子词完成复选框

对于Netbeans 8.0.2:

  1. 首选项-> 编辑器选项卡 ->代码完成选项卡下
  2. 将语言下拉菜单选项从所有语言更改为Java
  3. 选中子词完成复选框

这是一个非常方便的选项 :)


1

看起来如果你有耐心,你可以自己实现。

你需要实现一个CompletionProvider接口,根据Netbeans文档:“当用户在编辑器中输入时,代码完成基础设施会要求在XML层文件中注册的所有代码完成提供程序创建CompletionTasks。”

这里是一个链接,可能会帮助你到达目的地: http://platform.netbeans.org/tutorials/nbm-code-completion.html


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接