让你的XCode 拥有彩色的 Log

是不是很羡慕Android 开发者那五颜六色的Log?

是不是在做单元测试的时候看着一屏屏的系统打印出来的Log找自己想要的NSLog很抓狂?

让我们用XCode 插件来让你的Output 更加醒目,有效率!


安装XCode 插件 ——XCode Colors

  1. terminal下 git clone https://github.com/robbiehanson/XcodeColors
  2. open XcodeColors/XcodeColors.xcodeproj
  3. 在XCode 里面修改 Build Schemes, 选择Release 模式
  4. Build
  5. 重启XCode
  6. 切换target 到 TestXCodeColors
  7. 编译运行
  8. 效果如下图

我们的教程到这里,其实就已经可以结束了,之后在NSLog里面按照Test 那样打印就可以有彩色的log了

1
2
3
4
5
6
7
8
9
10
NSLog(XCODE_COLORS_ESCAPE @"fg0,0,255;" @"Blue text" XCODE_COLORS_RESET);

NSLog(XCODE_COLORS_ESCAPE @"bg220,0,0;" @"Red background" XCODE_COLORS_RESET);

NSLog(XCODE_COLORS_ESCAPE @"fg0,0,255;"
    XCODE_COLORS_ESCAPE @"bg220,0,0;"
    @"Blue text on red background"
    XCODE_COLORS_RESET);

NSLog(XCODE_COLORS_ESCAPE @"fg209,57,168;" @"You can supply your own RGB values!" XCODE_COLORS_RESET);

但是这样用起来体验太差了,可以引入另外一个库。

添加CocoaLumberjack

我们这里使用CocoaPod 来添加。

  1. 在podFile中添加pod ‘CocoaLumberjack’
  2. pod update
  3. 在XCode 里面修改 Run的Schemes,添加参数XcodeColors YES。
  4. 在appDelegate里面添加
1
2
[DDLog addLogger:[DDTTYLogger sharedInstance]]; //添加一个Output Logger
[[DDTTYLogger sharedInstance] setColorsEnabled:YES]; //开启颜色输出模式
  1. 定义 static const int ddLogLevel = LOG_LEVEL_VERBOSE;
  2. 使用DDLogWarn 和 DDLogError 替换掉NSLog

运行如下图:

默认情况下,warn 用的黄色,Error 是用的红色

是不是醒目多了?

Comments