【问题标题】:Is there a way to have Xcode 5 autocomplete like Visual Studio?有没有办法像 Visual Studio 一样让 Xcode 5 自动完成?
【发布时间】:2011-07-13 13:01:18
【问题描述】:

Xcode 5 现在取代了 Xcode 4,我对这两种 IDE 的一个常见抱怨是它们不会非常积极地自动完成。在 Visual Studio 中,只要您按下非标识符键(如括号、逗号、点、空格等),就会立即提交自动补全。在 Xcode 5 上,您必须按 Tab 或 Enter。

有没有一种已知的方法可以让行为更接近 Visual Studio 的自动完成功能?

【问题讨论】:

  • @zneak 虽然这个问题的答案是否定的,但我的回答中有两个警告作为替代方案。
  • @TommieC。我昨天看到了你的回答。但是,您会明白,这个问题自 2011 年以来就一直存在,并且在这一点上,如果我想以“不”作为答案,我有两年多的时间来这样做:) Xcode 3 有一个使自动完成正常的插件。我仍然不希望有人会为 Xcode 5 做类似的事情。

标签: xcode autocomplete xcode5


【解决方案1】:

我不知道这是否适用于 xCode 4,但值得一试 http://code.google.com/p/xcode-auto-assistant/

【讨论】:

  • Xcode 插件 API 是私有的,并且在 Xcode 3 和 Xcode 4 之间发生了变化。它几乎肯定会崩溃,但无论如何都要感谢。
【解决方案2】:

如果您想每次都完成相同的事情,您可以为此使用第三方软件(如文本扩展器)或使用 Snow Leopards 集成的文本替换功能。

【讨论】:

  • 自动完成的全部意义在于提供上下文建议。 “普通文本”自动完成程序无法做到这一点。
【解决方案3】:

您可以使用快捷键来显示完成列表。

您可以按“ctrl + ”,它会显示“visual studio like and feel”列表以进行自动完成。

【讨论】:

  • 它仍然没有与您键入的第一个非标识符字符一起提交,这是我最糟糕的抱怨。 ://
  • Ctrl+, 对我的版本没有任何作用;是 Xcode 4.3 DP 还是我在某个时候改变了什么?
  • 嗯,我没有意识到 Xcode 4.3 已经发布了。我会下载它并再试一次。
  • ^, 绝对对我没有任何帮助(即使使用 Xcode 4.3)。我发现的Xcode cheat sheet 也没有列出这个快捷方式。我错过了什么吗?
  • @Daneil,显示很好,但行为与 Visual Studio 的 C# 或 C++ 自动完成不同。使用 Visual Studio,当您突出显示一个条目时,插入任何不能成为标识符一部分的字符(如点、空格、括号、逗号等)将提交自动完成。在 Xcode 下,它不会。
【解决方案4】:

现在,如果您开始输入,则会弹出自动完成功能。您无需执行任何操作。
编辑
对于那个很抱歉。误解了这个问题。选择自动完成的唯一方法是键入 Tab、Enter 或右箭头键。在普通的 XCode 中没有办法做到这一点。

【讨论】:

  • 但它仍然没有按照我想要的方式自动完成。如我的问题所述,您必须按 Enter 键才能选择自动完成选项。在 Visual Studio 中,您只需键入一个不能作为标识符一部分的字符来选择该选项(例如,输入、空格、括号、逗号、点......)
【解决方案5】:

您没有列出另一个问题,XCode 按字母值自动完成,不兼容的值。 Visual Studio 实际上为您提供了一些有用的东西,但在 XCode 中,您可以将 Int 推到一个类中,反之亦然,这要归功于自动完成。

最接近的选项在 XCode 菜单->首选项->文本编辑中。但是,它没有你所追求的。我确实注意到自动完成括号不是很智能,我可能很快就会关闭它。

无论如何,XCode 替代 IDE 实际上具有上下文自动完成功能,这极大地提高了您无需查看文档即可编写代码的能力。不确定它的偏好是什么,但它可能值得一看。我不想做广告,所以如果你愿意,我会让你用谷歌搜索 XCode 替代品。

在实践中,.并且,“停止”自动完成实际上节省了我很多次。例如,写 for(int x = 0; x

长话短说,XCode 4 与 mac 的其他部分并不分离,当您尝试使用它时,这是一场噩梦。举一个明显的例子,在 TextEdit 中获取一个大文本文件,然后向下滚动一半。等一下,现在尝试突出显示文档的一半。 (例如,您的滚动条会在您执行任何操作之前消失)。

您正在寻找的答案可能存在也可能不存在,但我希望为您提供一些可能满足您渴望的替代方案。最后的示例只是展示了工具的真实性质及其 UI 原理。

总有 Monodevelop,(不是 Objective C,但应该更可定制),或者如果您不介意使用替代编码,也可能是具有 Objective C 的 ide。

祝你好运,我希望 XCode 也有更多的自定义功能。

【讨论】:

  • 我实际上是 Mac 的老用户,我认为您对可用性的担忧是没有根据的。除了 IDE 自动完成之外,我在 Mac OS 上的工作效率比在 Windows 上要高得多。
  • 如果您不喜欢滚动条的消失,请随意转到系统偏好设置 -> 常规,然后在“显示滚动条”下选择“始终”。除此之外,要选择一半的文档,您可以将鼠标放在要开始选择的位置,然后按 shift+cmd+up 选择从文档开头到那里的所有内容。
  • 啊,谢谢指点!我试图将我的反对点保留为用例。例如,Mac 刚刚禁用了 USB 电源,因为我将我的 arduino 插入超过 5 分钟。或者我启用了开发人员模式,并且无法在没有找到设置的情况下安装 Web 应用程序,正如您所描述的,埋在奇怪的地方。如果不使用谷歌搜索终端命令,您将无法显示隐藏文件夹。 XCode 有我上面提到的错误,它对开发人员很不友好。尝试在文档中找到 MKMapRect 的定义......无论如何,我会使用你的提示并感谢他们。请注意,我们仍然无法回答这个人的问题!
  • 这个人恰好是我。 ;) (另外,如果您需要处理不可见的文件夹,您可能会喜欢这个:您可能知道 shift+cmd+g 如何让您通过路径导航到文件夹?您可以在打开和保存对话框中执行相同的操作。 ) 我并不是说所有高级用户的东西对于其他平台的高级用户来说都是直观的,但作为一个成长为开发人员的普通 Mac 用户,我在 Windows 上做的任何事情我都不知道如何做/做得更好在 Mac 操作系统上。 (当然,我让自己保持相当“标准”的开发目标,如果你不喜欢主流的东西,那么 YMMV。)
  • (同样,如果 IDE 出现问题,则不包括数字。Visual Studio 肯定比 Xcode 好,但我更喜欢 Mac OS 而不是 Windows。)
【解决方案6】:

在 xCode 中,自动完成的唯一方法是按 tab 键 或“ctrl space”以列出以该字符序列开头的所有方法和变量。 如果需要,您可以自定义快捷键“cmd”,并且在“键绑定”部分中,您可以自定义它。

【讨论】:

  • 每个人都知道这一点。我在问是否有办法更积极地自动完成。在 Visual Studio 和其他 IDE 中,按 ,.() 之一;将选择自动完成选项。
【解决方案7】:

以下键绑定选项可用于代码完成。我不相信有任何方法可以更改底层引擎以更轻松地找到适当的完成,但是可以根据需要编写尽可能多的代码 sn-ps 以快速重用代码。

替代方案

我在我的代码 sn-ps 前面加上我自己的首字母,后跟我自己的逻辑短语结构。这提供了一个非常有用的 [faux] 索引,让我可以缩短自动完成例程。

例如典型用户sn-p的结构

[tnc][AddMethod][Somename]

必要时我会启动 tnc... 以访问我常用的 sn-ps 的 [faux] 索引。

片段本身不是自动完成,但它们确实提供了自动完成编码的替代索引,并且可以解决快速查找相关信息的问题。

【讨论】:

    【解决方案8】:

    control+space 可能是我所知道的唯一功能。我同意 xcode 没有任何我知道的自动完成功能。

    但除此之外,由于 Visual Studio 大部分时间都在不断更新。它的自动完成工作正常。在某个时候,Xcode 可能会在他们未来的更新中添加类似的功能。

    【讨论】:

      【解决方案9】:

      您可以从 XCode->Preferences->Text Editing 中选择以下两个选项:

      1. 在输入时建议补全。
      2. 启用类型转换完成

      【讨论】:

        猜你喜欢
        • 2011-11-16
        • 2012-10-10
        • 1970-01-01
        • 2012-06-06
        • 2011-11-29
        • 1970-01-01
        • 2017-02-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多