2010-06-08 162 views
6

XCode经常看起来失去了主意,并且没有为系统类编码或提供正确的“代码意义”建议。这是无止境的令人沮丧。这个问题已经被问过至少三个其他场合:XCode语法着色损坏

Problems with Xcode Syntax Highlighting

xcode code sense color/completion not working

Xcode: code loses syntax coloring

我已经通过项目版本/ 3.1-compatiable和3.2 compatiable,完全重启切换XCode每次更改前后都无效。

我重建了代码检测索引,并完全重新启动XCode,没有任何更改。

我建立了我的项目,以确保没有错误并重新启动。

我已将我的文件(sans.svn文件)复制到不同的位置 - 同样的问题。

我已经完全禁用参数“占位符”,因为他们搞砸了我的文件,当我输入速度太快......我所要求的是“esc”键显示正确的属性列表和方法。

回答

7

对于任何有兴趣的人;我的应用程序有一些预编译指令:

#if ... 

原因是这些部分之一存在错误。

我假设我的应用程序构建得很好,因为这些部分在他们到达编译器之前被剥离出来......但CodeSense不关心这些内容(它仍然想对这些内部的所有内容进行颜色编码) - 因此CodeSense会因为错误而在所有地方呕吐,尽管当我尝试构建应用程序时没有找到它。

一旦我在该代码块中修复了错误,我的着色就返回了。

如果XCode将这些部分变灰而不是死亡,会不错。

+0

PS)我张贴与苹果的bug报告并得到如下回应: 你好史蒂芬, 这是一个后续行动的Bug ID#8069971.经过进一步调查,已经确定这是一个已知的问题目前正在进行工程调查。此问题已在我们的缺陷数据库中原始错误ID#4824854中提交。用于跟踪此重复问题的原始错误编号可以在State列中找到,格式如下:Duplicate/OrigBug#。 – Steve 2010-06-10 04:19:37

+0

我想我找到了一个解决方法。看到我的答案在这里:http://stackoverflow.com/questions/2138047/xcode-code-loses-syntax-coloring/ – 2011-10-06 15:21:14

+0

经过了一个月,我的头在这个问题上,没有任何修复在线实际工作,我终于通过修正错误地完成的#ifdef来解决这个问题。我以前从未注意到这个错误,GCC也没有将其标记为警告。刚刚切换到LLVM,它标记了一个警告,只要我修复它,删除派生的项目数据,并重新编制索引,现在它工作的很好! – 2011-10-28 19:49:14

12

您应该清理项目的派生数据。他们可能会损坏。

转到管理器>项目> Your_Project>导出数据>删除

的Xcode将重新索引你的项目,你应该恢复正常。 。

+0

感谢您的意见,但我在两年前回答了我自己的问题。这是预编译器指令中的代码问题。 – Steve 2012-03-13 14:45:22

+0

当然,我看到了。我只是给可能遇到同样问题的人提供另一种说明,但不是出于同样的原因(这是我的情况)。 – KPM 2012-03-13 16:01:02