EnrichedNSLog 1.0.0

EnrichedNSLog 1.0.0

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最近发布2014年12月

未声明的维护。




  • Ingo

ExtendNSLog

这是对一个普通的NSLog的扩展,它控制布局、颜色和附加信息,而不改变NSLog命令为ALOG、BLOG、DEBLOG或任何其他命令。如果某个地方缺少ExtendNSLog,.....

Output of NSLog(@"#TEST")

用法

一旦你包括了文件(ExtendNSLog.h和ExtendNSLog.m),我建议你在YOURAPPLICATION-Prefix.pch中包括它们。

只需插入以下行:
#import "ExtendNSLog.h"

然后你的Prefix文件应该看起来像这样:

#import <Availability.h>

#ifndef __IPHONE_3_0
  #warning "This project uses features only available in iOS SDK 3.0 and later."
#endif

#ifdef __OBJC__
  #import <UIKit/UIKit.h>
  #import <Foundation/Foundation.h>
  #import "ExtendNSLog.h"
  #endif

这使你所有的代码都可以重新格式化你的代码中已有的NSLog输出,而无需更改代码中的一行。

要使用Xcode控制台的颜色功能,你必须包括插件XCodeColors(https://github.com/robbiehanson/XcodeColors)。只需下载项目的ZIP包,然后在XCode中构建它。然后重启Xcode。

工作原理

如果你的NSLog输出以#开头,则下一个符号被解释为显示命令。

所有命令都以#开头,例如

NSLog(@"\#COLOR:%@", NSLOG_USER1_COLOR);  // Set User color for normal output in USER1_COLOR

NSLog(@"\#!Print this line in the %@", @"error color");

颜色命令

命令描述
#! 此单个输出以错误颜色显示

#? 此单个输出以警告颜色显示

#. 此单个输出以信息颜色显示

#0 此单个输出以默认颜色显示

#1..#6 此单个输出以NSLOG_USER_1 (..6)颜色显示

特殊命令

这些命令在它们被禁用/激活之前切换显示

命令描述

#SHOWFILENAME 在输出前显示 .m 文件名

#SHOWFUNCTIONNAME 在输出前显示方法名

#SHOWLINENUMBER 在输出前显示行号

隐藏文件名 在输出前隐藏 .m 文件名

隐藏函数名 在输出前隐藏方法名

隐藏行号 在输出前隐藏行号

LOGTOFILE 将日志发送到用户文件系统中的一个名为 console.log 的文件。如果用户没有连接到 xcode/simulator 系统,则始终开启。适用于从远程用户/测试员获取信息

TEST 通过扩展的 NSLog 功能显示几个输出变体

CLEAR 删除日志文件并重新启动/清除屏幕

NSLOGINFO 显示常规日志信息

TIMESTAMP 打印时间戳

- 打印一个新的(空)行

DISPLAYONLY xx 仅显示匹配状态 xx 的 NSLog 命令,例如
NSLog(@"#DISPLAYONLY %d", NSLOG_WARNING + NSLOG_USER1);

NSLog 示例

NSLog(@"#HidEFILENAME");
NSLog(@"#1Extended NSLog  Version %@", EXTENDEDNSLOGVERSION);
NSLog(@"#!This is an error");
NSLog(@"#?This is a warning");
NSLog(@"#.This is an info line");
NSLog(@"#1This is User Color 1");
NSLog(@"#2This is User Color 2");
NSLog(@"#3This is User Color 3");
NSLog(@"#4This is User Color 4");
NSLog(@"#5This is User Color 5");
NSLog(@"#6This is User Color 6");
NSLog(@"#0This is the default color ");
NSLog(@"Just a normal string without formatting");
NSLog(@"Just another normal string without formatting");
NSLog(@"And another string without formatting");
NSLog(@"#DISPLAYONLY: %d", NSLOG_ERROR | NSLOG_DEFAULT);

NSLog(@"And starting from now only ERROR and DEFAULT NSLogs are displayed");
NSLog(@"#!This is an error");
NSLog(@"#?This is a warning");
NSLog(@"#.This is an info line");
NSLog(@"#1This is User Color 1");


NSLog(@"#-"); /// just an empty line
NSLog(@"#FOREGROUND: %@", @"00EEEE");
NSLog(@"#BACKGROUND: %@", @"222222");
NSLog(@"From now on, normal NSLOGs will be displayed in this color");

此代码将产生以下输出

Output

安装

嗯,最简单的方法 - 如同以往 - 是使用 CocoaPods

pod 'EnrichedNSLog', '~> 1.0'

但如果您不想使用 pods,只需将两个文件 ExtendNSLog.hExtendNSLog.m 拖入您的项目中。

在两种情况下,为了丰富 NSLog 输出,只需编辑您的 .prefix 文件(通常在 Supportig files 组中)并添加导入行

#import "ExtendNSLog.h"

这样所有 NSLog 输出都可以通过提到的命令来丰富。