Open basvankuijck opened 8 years ago
This plugin adds colors to the Debugger Console View. Xcode Editor Extensions only add behavior to the Editor View, and are extremely limited in what they can do there (can only modify the text buffer and selections).
So there is no chance.
I haven't tried it yet but there's a possibility that if you use the new Terminal instead of Xcode console feature this might "just work"
Then you can use the SwiftyBeaver logger, it has built-in support for colored output to Terminal / file.
@Ashton-W: Yeah I posted this request before reading the (limited) capabilities of Xcode Extensions.
I also thought that the new Xcode 8 Editor Extension would make an XcodeColors on steroids possible but then I saw the WWDC video and got disappointed 😢
@basvankuijck Understood. I saw it had no response, it's worth having a record of what can be done about this. Sadly so far we can't do anything but file radars for colors to be supported natively and for better extension points (Xcode 8 won't get new extensions)
I spoke to an Xcode engineer during wwdc and he recommended opening Radar for new features for the extension points. Everybody should fill one! :)
Apple's current mentality of trying to protect programmers from themselves is driving me crazy. I think Xcode8 is the first one I've installed that I have immediately backed off of. Anyway, Alcatraz is dealing with this issue too and there is a hacky workaround. I haven't tried it and since I'm uninstalling Xcode8 probably going to leave all of these problems Apple has dumped into our laps protecting us from getting work done and will see where it will be in six months time.
But the workaround seems to unsign the Xcode app. This makes it "vulnerable", and "at your own risk" but has not been a problem for me over the last 10 years with anything and I really think these heavy handed solutions that wipe out 99.9% of useful functionality to catch that 0.1% of problems is moronic.
So, if someone wants to try, this may be the starting point to get XcodeColors working. My app is super complex and I've put 6,000 hours in so far. I need colors in order to track easily what's going on in state changes and I can't imagine at this point losing this functionality.
@dbquarrel thanks for that link! I'm now back up and running with XcodeColors in XcodeGr8 — though I feel super dirty 😃
I've also written up a quick method that lets you switch back and forth between unsigned & signed Xcode versions, without duplicating the whole Xcode.app (12+ Gigs). It only duplicates 1 9kb file:
https://github.com/DaveWoodCom/XCGLogger/tree/swift_3.0#restore-plug-in-support
Hope it helps someone...
@txaiwieser Telling developers to open radar when you've just told them the issue is like saying "Fk you, we'll never do it, unless we feel like it. Meanwhile here is a place for you to whine"
@goktugyil Actually, Xcode-Tools devs told me they would love to have enough reasons (radars) to argue with project leaders and implement popular extensions requests..
But if you don't think it's going to change anything, don't fill radars then.. I just think its worth trying :)
@txaiwieser Seems reasonable.
I've tried the mentioned unsigning methods to reenable XcodeColors which is an essential tool for me too. Other plugins, like Alcatraz package manager work fine, but XcodeColors runs only occasionally, mostly I only see the unformatted logs. Do you guys also experience this? Is the reason known?
@gklka it's the same for me. I get the Xcodecolors test to compile correctly and show colors, but when I try with my own project (using xcglogger) it won't show colors, but only the plain text tags in the console.
@cyrus86 Have you followed the instructions here https://github.com/DaveWoodCom/XCGLogger#restore-plug-in-support to unsign Xcode?
And have you updated the DVTPlugInCompatibilityUUIDs list in the Info.plist here: ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin/Contents/Info.plist to add the correct id's?
It's working for me with the latest Xcode Version 8.1 beta 3 (8T47). DVTPlugInCompatibilityUUID is 65C57D32-1E9B-44B8-8C04-A27BA7AAE2C4.
Thanks for your help, @DaveWoodCom !
Yes, i did all of that and xcodeColors are working fine manually.
XCGLoggers coloring tags show up as [m
(e.g. for closing tag) in the console instead of [;
like they do when compiling the xcodeColors test before installing the plugin. Could it be that I messed something up with the xcglogger setup?
@cyrus86 Sounds like you're using the ANSIColorLogFormatter
instead of the XcodeColorsLogFormatter
.
The ANSIColorLogFormatter
should be used for terminal output that supports ANSI colour, for tailing a log file for example. And the XcodeColorsLogFormatter
should be used for Xcode console logging.
Take a look at https://github.com/DaveWoodCom/XCGLogger/blob/master/DemoApps/iOSDemo/iOSDemo/AppDelegate.swift to see both set up. The XcodeColorsLogFormatter
portion is commented out since it requires Xcode to be unsigned first.
Let me know if you have issues switching over and getting it working.
Oooooh. Thanks so much for pointing that out.
So still no better way than to mess up Xcode package each time ? :(
I think there is no better way. I wrote little help about this: https://medium.com/@gklka/making-xcode-colors-work-with-xcode-8-1-f67da74ad83f#.1f8p7joab
I found self-signing to be a little easier.
I created Radar #30893066
Please duplicate it and get Apple's attention.
http://www.openradar.me/30893066
There are a couple others you can duplicate or reference: http://www.openradar.me/27513087 http://www.openradar.me/28423208
I've put together a script that creates a lightweight, unsigned clone of Xcode by creating symlinks for everything except for the unsigned binary, so you don't have to mess around with switching symlinks or having a huge duplicate of Xcode.
Any chance this could be translated into a Xcode Editor Extension for Xcode8?