当文件在多个标签中打开时,Xcode会丢失语法高亮显示

时间:2018-05-17 18:07:13

标签: ios xcode tabs syntax-highlighting sourcekit

自Xcode 9.3.0起,我遇到了语法高亮/着色的问题。我经常在多个标签中工作。有时我在多个选项卡中打开相同的文件,以引用文件的不同部分,或者如果我使用的是调试器,另一个用于参考。

从9.3.0开始,当我在多个标签页中打开文件启动我的应用程序时,我失去了部分语法高亮显示。它似乎主要是自定义类,(黄昏配色方案中的绿色)。调试时这可能非常繁琐,因为我将Xcode设置为在遇到断点时打开预设的“调试”选项卡。基本上我将打开一个文件,启动应用程序,点击断点,Xcode在“调试”选项卡中打开相同的文件,当我最需要它时,我会丢失语法高亮,以进行调试。

我尝试了以下内容 - 删除派生数据文件夹 - 退出Xcode - 重启电脑 - 将$(SRCROOT)添加到标题搜索路径 - 清理项目 - 清理构建文件夹

请注意,我也尝试过一个全新的项目,只有几个类和几行代码。它仍然会发生。

请注意,我已经尝试在全新的用户帐户上安装新版本的Xcode,没有我以前的所有xcode设置和首选项。它仍然会发生。

我还下载了9.3.1并试了一下。它仍然发生

这让我发疯了。我非常希望找到解决方案。我希望这可以成为一个可以成为我英雄的老板源工具包专家!

工作语法高亮的示例: syntax coloring working

建造后的样子: enter image description here

更新:5/18/18:这是一个正在发生的事情的视频 https://youtu.be/fpWV_x17J7U

更新:5/18/18 在9.2.0上测试,不会发生,仅在9.3.0和9.3.1

更新:5/18/18 刚在朋友的电脑上测试过,也可以确认这一点也在发生。

重现的步骤。

•更新到Xcode 9.3.0或9.3.1

•下载并打开此基本示例项目:https://github.com/provmusic/syntaxHighlightingBug

•打开ViewController.swift

•构建 - >语法着色仍然很明显

•打开一个新标签,现在两个标签中都有ViewController.swift

•构建 - >语法着色中断

2 个答案:

答案 0 :(得分:0)

对我来说,它是上方第一行中的_code

if let err = err, let errorCode = StorageErrorCode(rawValue: err._code) {
        if errorCode == .objectNotFound {
          print("Asset not found, no need to delete")
          completion(true, nil)
          return
        }
      }

评论出来,然后阿甘解决了这个问题。

答案 1 :(得分:-1)

从苹果公司那里得到消息。最终在Xcode 10 Beta 5中修复了该问题