Andrey Banshchikov
Andrey Banshchikov

Reputation: 1548

Xcode 8 syntax highlighting doesn't work

The code above has correct syntax highlighting in Xcode 7. It is mix of Obj-C + Swift:

enter image description here

I've updated project to support Xcode 8 and only few things was changed:

After all the project is compiled fine for Xcode 8.

But Obj-C code integrated in Swift doesn't have any syntax highlighting and vice versa:

enter image description here

And there is << error type >> problem with autocomplete: enter image description here

Derived data deleting doesn't help, Xcode restart either :) CocoaPods version 0.38.2, iOS 7

Upvotes: 23

Views: 12850

Answers (9)

iGW
iGW

Reputation: 643

For me, code completion/highlighting not working due to the missing file in the Compile Sources under Build Phases. I added that file and it works.

Hope this helps anyone.

Upvotes: 0

Renish Dadhaniya
Renish Dadhaniya

Reputation: 10752

In my case:

In Finder I navigated to user->Library->Developer->Xcode->DerivedData. Close your Xcode Project then Clear DerivedData. It's work for me.

Happy Coding...:)

Upvotes: 1

Desh__
Desh__

Reputation: 899

As others have stated above - if I create a new tab ..or 4 then close the tab that usually does it. Sometimes commenting out a line then immediately uncommenting does the trick as well. I got tired of using several keys to accompolish this and made a simple AppleScript to do it for me.

Create a Automator 'service' and add this script to it. In System Preferences under Keyboard -> Shortcuts -> Services find your new service and assign it to an empty function key (I used F1) and now you have a 1 key fix!

on run {input, parameters}

tell application "Xcode"
    activate
    tell application "System Events" to keystroke "t" using command down
    delay (0.5)
    tell application "System Events" to keystroke "w" using command down
    delay (0.5)
    tell application "System Events" to keystroke "/" using command down
    delay (0.5)
    tell application "System Events" to keystroke "/" using command down
    delay (0.5)
end tell


return input
end run

Upvotes: -1

abc123
abc123

Reputation: 8303

Commenting and then uncommenting the affected lines worked for me.

Upvotes: 3

Daniel Galasko
Daniel Galasko

Reputation: 24237

I have found that when syntax highlighting falls over, switching tabs in Xcode fixes the issue ¯_(ツ)_/¯ sometimes I find I need to switch to at least 4 different tabs before it comes on again.

Otherwise a quit and reopen

Upvotes: 8

Andrey Banshchikov
Andrey Banshchikov

Reputation: 1548

This answer helped me https://forums.developer.apple.com/thread/46223 with one of my projects:

I got help from an apple engineer at WWDC on this issue and resolved it. The problem stemmed from cocoapods... Apparently cocoapods was copying .h files into the build directory and SourceKit was getting confused. I'm not entirely sure why the .h files were being copied - they aren't needed there. So the fix was to add a post-build script in your build phases section that removes the headers after a build.
It would look something like this:

function removeHeaders() {  
    find $BUILD_ROOT/Debug-iphonesimulator/  -name '*.h' -exec rm -f {} \;  
}  
removeHeaders  

Upvotes: 20

Andrey Volobuev
Andrey Volobuev

Reputation: 958

Setting Use Legacy Swift Language Version to YES in the Build Settings helped me to solve similar issue

Upvotes: 3

Andrey Banshchikov
Andrey Banshchikov

Reputation: 1548

Fixed. Problem was related to the presence of target in project which is not compiled. So if you have targets e.g. A, B, C and C is not compiled this cause problems with syntax highlighting.

Upvotes: 14

Massimo Polimeni
Massimo Polimeni

Reputation: 4906

It happened also to me with Xcode 8 GM but also lots of time when I used Xcode 7: sometimes the auto-complete feature and the syntax highlighting die without notice.

The only solution that it works for me is restart Xcode but a few times I needed to complete reboot my Mac; I still don't know exactly what causes this annoying problem.

Upvotes: 4

Related Questions