【问题标题】:How can I get Netbeans to use import statements instead of fully qualified class names on autocomplete?如何让 Netbeans 在自动完成时使用 import 语句而不是完全限定的类名?
【发布时间】:2011-08-26 09:30:01
【问题描述】:


我最近从 PDT 搬到了 Netbeans,有些事情我想不通。如何让 IDE 在文件开头使用“使用”语句来自动完成类名? 喜欢:

use \Foo\Bar\Baz;

class Something extends Baz { /* ... */ }

相反,如果我使用自动完成,我会得到

class Something extends \Foo\Bar\Baz { /* ... */ }

我检查了代码完成设置,但最有希望的选项(智能)希望我首先编写导入,以便对短类名使用自动完成。 PDT 能够将该行写入文件的开头。

【问题讨论】:

  • 没有,但如果我不用自己写,我的懒惰就会得到满足。

标签: php netbeans


【解决方案1】:

在较新版本的 Netbeans(即 7.3+)中,您可以按 Ctrl+Shift+I(不过,Alt+Shift+I 不会按预期工作)。

首先,它会在您的文件中搜索任何智能或完全限定的实例,然后询问您找到的实例应该是什么类型。然后它将完全限定的 use 语句添加到文件的顶部,并将源中的现有实例更改为不限定的。

【讨论】:

  • 遗憾的是,这在 8.1 中无法正常工作。它似乎不适用于别名并将导入放在命名空间之前,这对于大多数编码标准来说是不可接受的。
  • 投了赞成票,因为这已经足够好,但又是一个需要学习的键盘快捷键。我们应该能够按照问题的建议将其配置为自动执行。
【解决方案2】:

我使用“不合格”,然后转到文档顶部并输入“使用”并使用自动完成下拉菜单选择类,插入完全合格的类。

另一种选择是使用“完全合格”,然后将其复制->粘贴到新的使用语句中。

我前段时间联系了netbeans,他们同意这是一个很好的功能,但我没有跟进,我应该和他们一起去追吗?

【讨论】:

    【解决方案3】:

    转到您的 Netbeans 首选项,然后转到编辑器选项卡。在“语言”下拉菜单中,选择 PHP,然后滚动到底部。最后一个条目称为代码完成类型(仅限 PHP 5.3)。您可以选择 Smart 或 Unqualified,任何一个都最有可能解决您的问题。 (我不确定以前的版本,但我使用的是最新稳定的 NetBeans 7.0)

    【讨论】:

    • 问题是,两者都不会自动添加“使用”语句。这个问题最大的点是什么
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-12
    • 2012-08-08
    • 1970-01-01
    相关资源
    最近更新 更多