Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

initial-commit

  • Loading branch information...
commit b79b681ab3c28c64b7380249775166546b1d4331 0 parents
UncleMiF authored
5 .gitignore
@@ -0,0 +1,5 @@
+build
+.svn
+.DS_Store
+*.xcodeproj/xcuserdata
+*.xcodeproj/project.xcworkspace
2  English.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+NSHumanReadableCopyright = "© 2010-2011, Deep IT, Uncle MiF";
47 Info.plist
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFile</key>
+ <string></string>
+ <key>CFBundleIdentifier</key>
+ <string>ru.DeepIT.${PRODUCT_NAME}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>BNDL</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0.8</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleVersion</key>
+ <string>108</string>
+ <key>LoadAtLaunch</key>
+ <true/>
+ <key>NSPrincipalClass</key>
+ <string>XcodeColors</string>
+ <key>SIMBLTargetApplications</key>
+ <array>
+ <dict>
+ <key>BundleIdentifier</key>
+ <string>com.apple.Xcode</string>
+ </dict>
+ <dict>
+ <key>BundleIdentifier</key>
+ <string>com.apple.dt.Xcode</string>
+ </dict>
+ </array>
+ <key>XCGCReady</key>
+ <true/>
+ <key>XCPluginHasUI</key>
+ <false/>
+ <key>XC4Compatible</key>
+ <true/>
+</dict>
+</plist>
37 MethodReplace.h
@@ -0,0 +1,37 @@
+// COMMON FILE: Common
+
+//
+// MethodReplace.h
+// XcodeColors
+//
+// Created by Uncle MiF on 9/15/10.
+// Copyright 2010 Deep IT. All rights reserved.
+//
+
+/* The Black Magic begins here */
+#import <objc/runtime.h>
+
+typedef enum { CLASS_METHOD, INSTANCE_METHOD} t_target;
+
+#define ReplaceClassMethod(sourceClassName,sourceSelName,destinationClassName) ReplaceMethod(CLASS_METHOD, [sourceClassName class], @selector(sourceSelName), [destinationClassName class], 0)
+#define ReplaceInstanceMethod(sourceClassName,sourceSelName,destinationClassName) ReplaceMethod(INSTANCE_METHOD, [sourceClassName class], @selector(sourceSelName), [destinationClassName class], 0)
+
+#define DynamicMessage(targetMode,targetClassName,instance,targetSelName,...) \
+do\
+{\
+Method (*get_targetMethod)(Class,SEL) = targetMode == CLASS_METHOD ? class_getClassMethod : class_getInstanceMethod;\
+Method method = get_targetMethod([targetClassName class],@selector(targetSelName));\
+if (method)\
+{\
+IMP imp = method_getImplementation(method);\
+if (imp)\
+imp(instance,@selector(targetSelName),##__VA_ARGS__);\
+}\
+} while(0)
+
+#define DynamicClassMessage(...) DynamicMessage(CLASS_METHOD,##__VA_ARGS__)
+#define DynamicInstanceMessage(...) DynamicMessage(INSTANCE_METHOD,##__VA_ARGS__)
+
+IMP ReplaceMethod(t_target target,
+ Class sourceClass,SEL sourceSel,
+ Class destinationClass,SEL destinationSel);
42 MethodReplace.m
@@ -0,0 +1,42 @@
+// COMMON FILE: Common
+
+//
+// MethodReplace.m
+// XcodeColors
+//
+// Created by Uncle MiF on 9/15/10.
+// Copyright 2010 Deep IT. All rights reserved.
+//
+
+#import "MethodReplace.h"
+
+IMP ReplaceMethod(t_target target,
+ Class sourceClass,SEL sourceSel,
+ Class destinationClass,SEL destinationSel)
+{
+ if (!sourceSel || !sourceClass || !destinationClass)
+ return nil;
+
+ if (!destinationSel)
+ destinationSel = sourceSel;
+
+ Method (*get_targetMethod)(Class,SEL) = target == CLASS_METHOD ? class_getClassMethod : class_getInstanceMethod;
+
+ Method sourceMethod = get_targetMethod(sourceClass, sourceSel);
+ if (!sourceMethod)
+ return nil;
+
+ IMP prevImplementation = method_getImplementation(sourceMethod);
+
+ Method destinationMethod = get_targetMethod(destinationClass, destinationSel);
+ if (!destinationMethod)
+ return nil;
+
+ IMP newImplementation = method_getImplementation(destinationMethod);
+ if (!newImplementation)
+ return nil;
+
+ method_setImplementation(sourceMethod, newImplementation);
+
+ return prevImplementation;
+}
39 XcodeColors.h
@@ -0,0 +1,39 @@
+//
+// XcodeColors.h
+// XcodeColors
+//
+// Created by Uncle MiF on 9/13/10.
+// Copyright 2010 Deep IT. All rights reserved.
+//
+
+#import <Cocoa/Cocoa.h>
+
+@interface XcodeColors : NSObject
+
+// Foreground
+
++(NSColor*)blackColor;
++(NSColor*)redColor;
++(NSColor*)greenColor;
++(NSColor*)yellowColor;
++(NSColor*)blueColor;
++(NSColor*)magentaColor;
++(NSColor*)cyanColor;
++(NSColor*)whiteColor;
+
+// Background
+
++(NSColor*)blackBackgroundColor;
++(NSColor*)redBackgroundColor;
++(NSColor*)greenBackgroundColor;
++(NSColor*)yellowBackgroundColor;
++(NSColor*)blueBackgroundColor;
++(NSColor*)magentaBackgroundColor;
++(NSColor*)cyanBackgroundColor;
++(NSColor*)whiteBackgroundColor;
+
+// Plugin
++(void)pluginDidLoad:(id)xcodeDirectCompatibility;
+-(void)registerLaunchSystemDescriptions;
+
+@end
360 XcodeColors.m
@@ -0,0 +1,360 @@
+//
+// XcodeColors.m
+// XcodeColors
+//
+// Created by Uncle MiF on 9/13/10.
+// Copyright 2010 Deep IT. All rights reserved.
+//
+
+#import "XcodeColors.h"
+#import "MethodReplace.h"
+
+#define XCODE_COLORS "XcodeColors"
+
+#define LC_SEQ_MAC @"\033["
+#define LC_SEQ_IOS @"\xC2\xA0["
+
+BOOL isLogTextView(NSTextView* textView)
+{
+ if (!textView)
+ return NO;
+ NSString * textViewClass = NSStringFromClass([textView class]);
+ // Xcode Debuger View
+ if ([textViewClass isEqualToString:@"IDEConsoleTextView"]/* Xcode 4 */ ||
+ [textViewClass isEqualToString:@"PBXTtyText"]/* Xcode 3 */)
+ return YES;
+ return NO;
+}
+
+BOOL isLogTextStorage(NSAttributedString * textStorage)
+{
+ id textView = nil;
+ if ([textStorage respondsToSelector:@selector(layoutManagers)])
+ {
+ id layoutManagers = [(NSTextStorage*)textStorage layoutManagers];
+ if ([layoutManagers count])
+ {
+ id layoutManager = [layoutManagers objectAtIndex:0];
+ if ([layoutManager respondsToSelector:@selector(firstTextView)])
+ textView = [layoutManager firstTextView];
+ }
+ }
+
+ return isLogTextView(textView);
+}
+
+static IMP imp_ts_fixAttributesInRange = nil;
+
+@interface XcodeColors_NSTextStorage : NSTextStorage
+
+-(void)fixAttributesInRange:(NSRange)aRange;
+
+@end
+
+@implementation XcodeColors_NSTextStorage
+
+NSString* SeqReplacementWithLenght(NSUInteger length)
+{
+ if (!length)
+ return @"";
+ NSMutableString * res = [NSMutableString string];
+ while(length--)
+ [res appendString:@"\x1D"];// Logical Group Separator
+ return res;
+}
+
+void ApplyANSIColors(NSTextStorage * textStorage, NSRange range, NSString * seq)
+{
+ NSString * affectedString = [[textStorage string] substringWithRange:range];
+ if ([affectedString rangeOfString:seq].location != NSNotFound)
+ {
+ NSArray * components = [affectedString componentsSeparatedByString:seq];
+ NSRange componentRange = range;
+ componentRange.length = 0;
+ BOOL firstPass = YES;
+ NSMutableArray * clearSEQ = [NSMutableArray array];
+ NSMutableDictionary * attrs = [NSMutableDictionary dictionary];
+ for (NSString * component in components)
+ {
+ if (!firstPass)
+ {
+ NSString * realString = component;
+ static NSString * ctrlSEQ[] = {
+ // Foreground LCL_*
+ @"0;30m"/*black*/,@"0;31m"/*red*/,@"0;32m"/*green*/,@"0;33m"/*yellow*/,@"0;34m"/*blue*/,@"0;35m"/*magenta*/,@"0;36m"/*cyan*/,@"0;37m"/*white*/,
+
+ // Background LBCL_*
+ @"0;40m"/*black*/,@"0;41m"/*red*/,@"0;42m"/*green*/,@"0;43m"/*yellow*/,@"0;44m"/*blue*/,@"0;45m"/*magenta*/,@"0;46m"/*cyan*/,@"0;47m"/*white*/,
+
+ @"0m"/*nothing*/,@"00m"/*nothing*/};
+ int i;
+ for (i = 0; i < sizeof(ctrlSEQ)/sizeof(ctrlSEQ[0]); i++)
+ {
+ if ([component rangeOfString:ctrlSEQ[i]].location != NSNotFound)
+ {
+ switch(i)
+ {
+ case 0:
+ [attrs setObject:[XcodeColors blackColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 1:
+ [attrs setObject:[XcodeColors redColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 2:
+ [attrs setObject:[XcodeColors greenColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 3:
+ [attrs setObject:[XcodeColors yellowColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 4:
+ [attrs setObject:[XcodeColors blueColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 5:
+ [attrs setObject:[XcodeColors magentaColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 6:
+ [attrs setObject:[XcodeColors cyanColor] forKey:NSForegroundColorAttributeName];
+ break;
+ case 7:
+ [attrs setObject:[XcodeColors whiteColor] forKey:NSForegroundColorAttributeName];
+ break;
+
+ case 8:
+ [attrs setObject:[XcodeColors blackBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 9:
+ [attrs setObject:[XcodeColors redBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 10:
+ [attrs setObject:[XcodeColors greenBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 11:
+ [attrs setObject:[XcodeColors yellowBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 12:
+ [attrs setObject:[XcodeColors blueBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 13:
+ [attrs setObject:[XcodeColors magentaBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 14:
+ [attrs setObject:[XcodeColors cyanBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+ case 15:
+ [attrs setObject:[XcodeColors whiteBackgroundColor] forKey:NSBackgroundColorAttributeName];
+ break;
+
+ default:
+ [attrs removeObjectForKey:NSForegroundColorAttributeName];
+ [attrs removeObjectForKey:NSBackgroundColorAttributeName];
+ }
+ realString = [component substringFromIndex:[ctrlSEQ[i] length]];
+ [clearSEQ addObject:[NSValue valueWithRange:NSMakeRange(componentRange.location - [seq length],[ctrlSEQ[i] length] + [seq length])]];
+ break;
+ }
+ }
+ }
+ componentRange.length = [component length];
+ [textStorage addAttributes:attrs range:componentRange];
+ componentRange.location += componentRange.length + [seq length];
+ firstPass = NO;
+ }
+
+ for (NSValue * clearValue in clearSEQ)
+ {
+ NSRange range = [clearValue rangeValue];
+ [textStorage replaceCharactersInRange:range withString:SeqReplacementWithLenght(range.length)];
+ }
+ }
+}
+
+-(void)fixAttributesInRange:(NSRange)aRange// NSTextStorage
+{
+ imp_ts_fixAttributesInRange(self,_cmd,aRange);
+
+ if (getenv(XCODE_COLORS) && !strcmp(getenv(XCODE_COLORS),"YES") && isLogTextStorage(self))
+ {
+ ApplyANSIColors(self,aRange,LC_SEQ_MAC);
+ ApplyANSIColors(self,aRange,LC_SEQ_IOS);
+ }
+}
+
+@end
+
+@implementation XcodeColors
+
++(void)pluginDidLoad:(id)xcodeDirectCompatibility
+{
+ /* nothing */
+ NSLog(@"%s",__PRETTY_FUNCTION__);
+}
+
+-(void)registerLaunchSystemDescriptions
+{
+ /* nothing */
+ NSLog(@"%s",__PRETTY_FUNCTION__);
+}
+
++(void)load
+{
+ NSLog(@"%s,v,8",__PRETTY_FUNCTION__);
+ if (getenv(XCODE_COLORS) && !strcmp(getenv(XCODE_COLORS), "YES"))
+ return;
+
+ imp_ts_fixAttributesInRange = ReplaceInstanceMethod(NSTextStorage,fixAttributesInRange:,XcodeColors_NSTextStorage);
+
+ setenv(XCODE_COLORS, "YES", 0);
+}
+
++(NSString*)defaultColorKeyByName:(NSString*)colorName
+{
+ return [NSString stringWithFormat:@"ColorLog_%@",colorName];
+}
+
++(NSColor*)defaultColorWithName:(NSString*)colorName defaultColor:(NSColor*)color
+{
+ NSUserDefaults * pref = [NSUserDefaults standardUserDefaults];
+ id defColor = [pref objectForKey:[self defaultColorKeyByName:colorName]];
+ if (!defColor)
+ {
+ if (!color)
+ return nil;
+ [pref setObject:[NSArchiver archivedDataWithRootObject:color] forKey:[self defaultColorKeyByName:colorName]];
+ return color;
+ }
+ if ([defColor isKindOfClass:[NSData class]])
+ defColor = [NSUnarchiver unarchiveObjectWithData:defColor];
+ if ([defColor isKindOfClass:[NSColor class]])
+ return defColor;
+ if ([defColor isKindOfClass:[NSString class]])
+ {
+ NSArray * components = [defColor componentsSeparatedByString:@","];
+ if ([components count] == 4)
+ {
+ return [NSColor
+ colorWithDeviceRed:[[components objectAtIndex:0] floatValue]
+ green:[[components objectAtIndex:1] floatValue]
+ blue:[[components objectAtIndex:2] floatValue]
+ alpha:[[components objectAtIndex:3] floatValue]];
+ }
+ if ([components count] == 1)
+ {
+ SEL sel = NSSelectorFromString(defColor);
+ if (sel && [NSColor respondsToSelector:sel])
+ return [NSColor performSelector:sel];
+ }
+ }
+ return color;
+}
+
+// Foreground
+
++(NSColor*)blackColor
+{
+ return [self defaultColorWithName:@"blackColor" defaultColor:[NSColor blackColor]];
+}
+
++(NSColor*)redColor
+{
+ return [self defaultColorWithName:@"redColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0x89/255.0 green:0x2A/255.0 blue:0x27/255.0 alpha:0xFF/255.0]/* 892A27 */
+ ];
+}
+
++(NSColor*)greenColor
+{
+ return [self defaultColorWithName:@"greenColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0x1A/255.0 green:0x89/255.0 blue:0x3B/255.0 alpha:0xFF/255.0]/* 1A893B */
+ ];
+}
+
++(NSColor*)yellowColor
+{
+ return [self defaultColorWithName:@"yellowColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xD8/255.0 green:0xD2/255.0 blue:0x53/255.0 alpha:0xFF/255.0]/* D8D253 */
+ ];
+}
+
++(NSColor*)blueColor
+{
+ return [self defaultColorWithName:@"blueColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0x41/255.0 green:0x87/255.0 blue:0xD8/255.0 alpha:0xFF/255.0]/* 4187D8 */
+ ];
+}
+
++(NSColor*)magentaColor
+{
+ return [self defaultColorWithName:@"magentaColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xC2/255.0 green:0x5E/255.0 blue:0xD8/255.0 alpha:0xFF/255.0]/* C25ED8 */
+ ];
+}
+
++(NSColor*)cyanColor
+{
+ return [self defaultColorWithName:@"cyanColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0x3F/255.0 green:0xC6/255.0 blue:0xD8/255.0 alpha:0xFF/255.0]/* 3FC6D8 */
+ ];
+}
+
++(NSColor*)whiteColor
+{
+ return [self defaultColorWithName:@"whiteColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xCC/255.0 green:0xCB/255.0 blue:0xC9/255.0 alpha:0xFF/255.0]/* CCCBC9 */
+ ];
+}
+
+// Background
+
++(NSColor*)blackBackgroundColor
+{
+ return [self defaultColorWithName:@"blackBackgroundColor" defaultColor:[NSColor blackColor]];
+}
+
++(NSColor*)redBackgroundColor
+{
+ return [self defaultColorWithName:@"redBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xCC/255.0 green:0x8B/255.0 blue:0x8D/255.0 alpha:0xFF/255.0]/* CC8B8D */
+ ];
+}
+
++(NSColor*)greenBackgroundColor
+{
+ return [self defaultColorWithName:@"greenBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xAA/255.0 green:0xCC/255.0 blue:0xAD/255.0 alpha:0xFF/255.0]/* AACCAD */
+ ];
+}
+
++(NSColor*)yellowBackgroundColor
+{
+ return [self defaultColorWithName:@"yellowBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xCC/255.0 green:0xBC/255.0 blue:0x91/255.0 alpha:0xFF/255.0]/* CCBC91 */
+ ];
+}
+
++(NSColor*)blueBackgroundColor
+{
+ return [self defaultColorWithName:@"blueBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xA9/255.0 green:0xC0/255.0 blue:0xCC/255.0 alpha:0xFF/255.0]/* A9C0CC */
+ ];
+}
+
++(NSColor*)magentaBackgroundColor
+{
+ return [self defaultColorWithName:@"magentaBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xCC/255.0 green:0xB1/255.0 blue:0xC0/255.0 alpha:0xFF/255.0]/* CCB1C0 */
+ ];
+}
+
++(NSColor*)cyanBackgroundColor
+{
+ return [self defaultColorWithName:@"cyanBackgroundColor" defaultColor:
+ [NSColor colorWithCalibratedRed:0xB3/255.0 green:0xCA/255.0 blue:0xCC/255.0 alpha:0xFF/255.0]/* B3CACC */
+ ];
+}
+
++(NSColor*)whiteBackgroundColor
+{
+ return [self defaultColorWithName:@"whiteBackgroundColor" defaultColor:[NSColor whiteColor]];
+}
+
+@end
321 XcodeColors.xcodeproj/project.pbxproj
@@ -0,0 +1,321 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 45;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 19A131E8123E5A9800B2532F /* XcodeColors.m in Sources */ = {isa = PBXBuildFile; fileRef = 19A131E7123E5A9800B2532F /* XcodeColors.m */; };
+ 19FCB50612410E410095CF63 /* MethodReplace.m in Sources */ = {isa = PBXBuildFile; fileRef = 19FCB50512410E410095CF63 /* MethodReplace.m */; };
+ 19FD4826133A59190072594E /* version.plist in CopyFiles */ = {isa = PBXBuildFile; fileRef = 19FD4822133A58110072594E /* version.plist */; };
+ 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C167DFE841241C02AAC07 /* InfoPlist.strings */; };
+ 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXCopyFilesBuildPhase section */
+ 19FD4825133A590C0072594E /* CopyFiles */ = {
+ isa = PBXCopyFilesBuildPhase;
+ buildActionMask = 2147483647;
+ dstPath = Contents;
+ dstSubfolderSpec = 1;
+ files = (
+ 19FD4826133A59190072594E /* version.plist in CopyFiles */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXCopyFilesBuildPhase section */
+
+/* Begin PBXFileReference section */
+ 089C1672FE841209C02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
+ 089C167EFE841241C02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 089C167FFE841241C02AAC07 /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
+ 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
+ 19A131E6123E5A9800B2532F /* XcodeColors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XcodeColors.h; sourceTree = "<group>"; };
+ 19A131E7123E5A9800B2532F /* XcodeColors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XcodeColors.m; sourceTree = "<group>"; };
+ 19FCB50412410E410095CF63 /* MethodReplace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MethodReplace.h; sourceTree = "<group>"; };
+ 19FCB50512410E410095CF63 /* MethodReplace.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MethodReplace.m; sourceTree = "<group>"; };
+ 19FD4822133A58110072594E /* version.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = version.plist; sourceTree = "<group>"; };
+ 32DBCF630370AF2F00C91783 /* XcodeColors_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XcodeColors_Prefix.pch; sourceTree = "<group>"; };
+ 8D5B49B6048680CD000E48DA /* XcodeColors.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = XcodeColors.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
+ 8D5B49B7048680CD000E48DA /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
+ D2F7E65807B2D6F200F64583 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 8D5B49B3048680CD000E48DA /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D5B49B4048680CD000E48DA /* Cocoa.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 089C166AFE841209C02AAC07 /* XcodeColors */ = {
+ isa = PBXGroup;
+ children = (
+ 08FB77AFFE84173DC02AAC07 /* Classes */,
+ 32C88E010371C26100C91783 /* Other Sources */,
+ 089C167CFE841241C02AAC07 /* Resources */,
+ 089C1671FE841209C02AAC07 /* Frameworks and Libraries */,
+ 19C28FB8FE9D52D311CA2CBB /* Products */,
+ );
+ name = XcodeColors;
+ sourceTree = "<group>";
+ };
+ 089C1671FE841209C02AAC07 /* Frameworks and Libraries */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */,
+ 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */,
+ );
+ name = "Frameworks and Libraries";
+ sourceTree = "<group>";
+ };
+ 089C167CFE841241C02AAC07 /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ 19FD4822133A58110072594E /* version.plist */,
+ 8D5B49B7048680CD000E48DA /* Info.plist */,
+ 089C167DFE841241C02AAC07 /* InfoPlist.strings */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
+ 08FB77AFFE84173DC02AAC07 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ 19A131E6123E5A9800B2532F /* XcodeColors.h */,
+ 19A131E7123E5A9800B2532F /* XcodeColors.m */,
+ 19FCB50412410E410095CF63 /* MethodReplace.h */,
+ 19FCB50512410E410095CF63 /* MethodReplace.m */,
+ );
+ name = Classes;
+ sourceTree = "<group>";
+ };
+ 1058C7ACFEA557BF11CA2CBB /* Linked Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7ADFEA557BF11CA2CBB /* Cocoa.framework */,
+ );
+ name = "Linked Frameworks";
+ sourceTree = "<group>";
+ };
+ 1058C7AEFEA557BF11CA2CBB /* Other Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 089C167FFE841241C02AAC07 /* AppKit.framework */,
+ D2F7E65807B2D6F200F64583 /* CoreData.framework */,
+ 089C1672FE841209C02AAC07 /* Foundation.framework */,
+ );
+ name = "Other Frameworks";
+ sourceTree = "<group>";
+ };
+ 19C28FB8FE9D52D311CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 8D5B49B6048680CD000E48DA /* XcodeColors.bundle */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 32C88E010371C26100C91783 /* Other Sources */ = {
+ isa = PBXGroup;
+ children = (
+ 32DBCF630370AF2F00C91783 /* XcodeColors_Prefix.pch */,
+ );
+ name = "Other Sources";
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 8D5B49AC048680CD000E48DA /* XcodeColors */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 1DEB913A08733D840010E9CD /* Build configuration list for PBXNativeTarget "XcodeColors" */;
+ buildPhases = (
+ 8D5B49AF048680CD000E48DA /* Resources */,
+ 19FD4825133A590C0072594E /* CopyFiles */,
+ 8D5B49B1048680CD000E48DA /* Sources */,
+ 8D5B49B3048680CD000E48DA /* Frameworks */,
+ 19863EE81240DD900067FA40 /* ShellScript */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = XcodeColors;
+ productInstallPath = "$(HOME)/Library/Bundles";
+ productName = XcodeColors;
+ productReference = 8D5B49B6048680CD000E48DA /* XcodeColors.bundle */;
+ productType = "com.apple.product-type.bundle";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 089C1669FE841209C02AAC07 /* Project object */ = {
+ isa = PBXProject;
+ buildConfigurationList = 1DEB913E08733D840010E9CD /* Build configuration list for PBXProject "XcodeColors" */;
+ compatibilityVersion = "Xcode 3.1";
+ developmentRegion = English;
+ hasScannedForEncodings = 1;
+ knownRegions = (
+ English,
+ Japanese,
+ French,
+ German,
+ );
+ mainGroup = 089C166AFE841209C02AAC07 /* XcodeColors */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 8D5B49AC048680CD000E48DA /* XcodeColors */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 8D5B49AF048680CD000E48DA /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D5B49B0048680CD000E48DA /* InfoPlist.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXShellScriptBuildPhase section */
+ 19863EE81240DD900067FA40 /* ShellScript */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "./xcb-install.pl";
+ };
+/* End PBXShellScriptBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 8D5B49B1048680CD000E48DA /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 19A131E8123E5A9800B2532F /* XcodeColors.m in Sources */,
+ 19FCB50612410E410095CF63 /* MethodReplace.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+ 089C167DFE841241C02AAC07 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 089C167EFE841241C02AAC07 /* English */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ 1DEB913B08733D840010E9CD /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_MODEL_TUNING = G5;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = XcodeColors_Prefix.pch;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PRODUCT_NAME = XcodeColors;
+ WRAPPER_EXTENSION = bundle;
+ };
+ name = Debug;
+ };
+ 1DEB913C08733D840010E9CD /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ GCC_MODEL_TUNING = G5;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = XcodeColors_Prefix.pch;
+ INFOPLIST_FILE = Info.plist;
+ INSTALL_PATH = "$(HOME)/Library/Bundles";
+ PRODUCT_NAME = XcodeColors;
+ WRAPPER_EXTENSION = bundle;
+ };
+ name = Release;
+ };
+ 1DEB913F08733D840010E9CD /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CODE_SIGN_IDENTITY = "3rd Party Mac Developer Application: Igor Belyaletdinov";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_ENABLE_OBJC_GC = supported;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ ONLY_ACTIVE_ARCH = YES;
+ PREBINDING = NO;
+ SDKROOT = macosx10.6;
+ };
+ name = Debug;
+ };
+ 1DEB914008733D840010E9CD /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ CODE_SIGN_IDENTITY = "3rd Party Mac Developer Application: Igor Belyaletdinov";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_ENABLE_OBJC_GC = supported;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ MACOSX_DEPLOYMENT_TARGET = 10.5;
+ PREBINDING = NO;
+ SDKROOT = macosx10.6;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ 1DEB913A08733D840010E9CD /* Build configuration list for PBXNativeTarget "XcodeColors" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 1DEB913B08733D840010E9CD /* Debug */,
+ 1DEB913C08733D840010E9CD /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 1DEB913E08733D840010E9CD /* Build configuration list for PBXProject "XcodeColors" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 1DEB913F08733D840010E9CD /* Debug */,
+ 1DEB914008733D840010E9CD /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 089C1669FE841209C02AAC07 /* Project object */;
+}
7 XcodeColors_Prefix.pch
@@ -0,0 +1,7 @@
+//
+// Prefix header for all source files of the 'XcodeColors' target in the 'XcodeColors' project.
+//
+
+#ifdef __OBJC__
+ #import <Cocoa/Cocoa.h>
+#endif
11 install
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+
+rm -rf ~/Library/Application\ Support/SIMBL/Plugins/XcodeColors.bundle 2>/dev/null
+#mkdir -p ~/Library/Application\ Support/SIMBL/Plugins/ 2>/dev/null
+#cp -r build/Release/XcodeColors.bundle ~/Library/Application\ Support/SIMBL/Plugins/
+
+rm -rf ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin 2>/dev/null
+mkdir -p ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins 2>/dev/null
+cp -r build/Release/XcodeColors.bundle ~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XcodeColors.xcplugin
+
+echo Installed
2  open
@@ -0,0 +1,2 @@
+#!/usr/bin/env bash
+open *.xcodeproj
16 version.plist
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>BuildVersion</key>
+ <string>3</string>
+ <key>CFBundleShortVersionString</key>
+ <string>6.0</string>
+ <key>CFBundleVersion</key>
+ <string>262</string>
+ <key>ProjectName</key>
+ <string>IDEXcode3ProjectSupport</string>
+ <key>SourceVersion</key>
+ <string>2620000</string>
+</dict>
+</plist>
3  xcb-install.pl
@@ -0,0 +1,3 @@
+#!/usr/bin/env perl
+
+system("./install") if ($ENV{BUILD_STYLE} =~ /Release/);
Please sign in to comment.
Something went wrong with that request. Please try again.