Xcode 5 现在取代了 Xcode 4,我对这两种 IDE 的一个常见抱怨是它们不会非常积极地自动完成。在 Visual Studio 中,只要您按下非标识符键(如括号、逗号、点、空格等),就会立即提交自动补全。在 Xcode 5 上,您必须按 Tab 或 Enter。
有没有一种已知的方法可以让行为更接近 Visual Studio 的自动完成功能?
Xcode 5 现在取代了 Xcode 4,我对这两种 IDE 的一个常见抱怨是它们不会非常积极地自动完成。在 Visual Studio 中,只要您按下非标识符键(如括号、逗号、点、空格等),就会立即提交自动补全。在 Xcode 5 上,您必须按 Tab 或 Enter。
有没有一种已知的方法可以让行为更接近 Visual Studio 的自动完成功能?
您可以从 XCode->Preferences->Text Editing 中选择以下两个选项:
在 xCode 中,自动完成的唯一方法是按Tab 键或“ ctrl 空格”来获得以该字符序列开头的所有方法和变量的列表。如果需要,您可以自定义快捷键“cmd”,并且在“键绑定”部分中,您可以自定义它。
您没有列出另一个问题,XCode 按字母值自动完成,不兼容的值。Visual Studio 实际上为您提供了有用的东西,但是在 XCode 中,您可以将 Int 推到一个类中,反之亦然,这要归功于自动完成功能。
最接近的选项在 XCode 菜单->首选项->文本编辑中。但是,它没有你所追求的。我确实注意到自动完成括号不是很智能,我可能很快就会关闭我的。
无论如何,XCode 替代 IDE 实际上具有上下文自动完成功能,这极大地提高了您无需查看文档即可编写代码的能力。不确定它的偏好是什么,但它可能值得一看。我不是想为它做广告,所以如果你愿意,我会让你用谷歌搜索 XCode 替代品。
在实践中,. 并且,“停止”自动完成实际上节省了我很多次。例如,写 for(int x = 0; x < 5; x++) {} 然后尝试将 x 更改为 y。自动完成将介入并完全让您失望,除非您按空格或 . 或者 ,。如果您有积极的自动完成功能,它会将其非工作字母值推到列表顶部。
长话短说,XCode 4 与 mac 的其他部分并没有分开,当你尝试去使用它时,这是一场噩梦。举一个明显的例子,在 TextEdit 中获取一个大文本文件,然后向下滚动一半。等一下,现在尝试突出显示文档的一半。(例如,您的滚动条会在您执行任何操作之前消失)。
您正在寻找的答案可能存在也可能不存在,但我希望为您提供一些可能满足您渴望的替代方案。最后的示例只是展示了工具的真实性质及其 UI 原理。
总是有 Monodevelop,(不是 Objective C,但应该更可定制),或者如果你不介意在替代方案中编码,也许有一个具有 Objective C 的 ide。
祝你好运,我希望 XCode 也有更多的自定义。
现在,如果您开始输入自动完成将弹出。您无需做任何事情。
编辑
对此感到抱歉。误解了这个问题。选择自动完成的唯一方法是键入 Tab、Enter 或右箭头键。在普通的 XCode 中没有办法做到这一点。
您可以使用快捷键来显示完成列表。
您可以按“ctrl + ”,它将显示“visual studio like and feel”列表以进行自动完成。
control+space 可能是我所知道的唯一功能。我同意 xcode 没有任何我知道的自动完成功能。
但除此之外,由于 Visual Studio 大部分时间都在不断更新。它的自动完成工作正常。在某个时候,Xcode 可能会在他们未来的更新中添加类似的功能。
以下键绑定选项可用于代码完成。我不相信有任何方法可以更改底层引擎以更轻松地找到适当的完成,但是可以编写任意数量的代码片段以快速重用代码。
选择
我在我的代码片段前面加上我自己的首字母缩写,然后是我自己的逻辑短语结构。这提供了一个非常有用的 [faux] 索引,让我可以将自动完成例程短路。
例如典型用户片段的结构
[tnc][AddMethod][Somename]
必要时,我会启动 tnc... 以访问我的常用片段的 [faux] 索引。
片段本身不是自动完成,但它们确实提供了自动完成编码的替代索引,并且可以解决快速查找相关信息的问题。
我不知道这是否适用于 xCode 4,但值得一试 http://code.google.com/p/xcode-auto-assistant/
如果您想每次都完成相同的事情,您可以为此使用文本扩展器等第三方软件或使用 Snow Leopards 集成的文本替换功能。