¿Alguna forma de imprimir en color con NSLog?

En un terminal de color típico, hay secuencias de escape que uno puede usar para imprimir text en diferentes colors. Normalmente hay 8 colors disponibles. Intenté usar las secuencias estándar de escape ANSI para esto en NSLog, pero sin dados. No es compatible con ese mecanismo.

¿Hay una forma diferente de imprimir en la console (logging) en color usando NSLog?

Gracias.

Puede usar Apple Color Emoji para agregar un poco de color a su salida de logging de esta manera:

if ([self isKindOfClass:[UITableViewController class]]) NSLog(@"💙 Table View controller Will appear: %@", NSStringFromClass([self class])); else if ([self isKindOfClass:[UINavigationController class]]) NSLog(@"💜 Navigation controller Will appear: %@", NSStringFromClass([self class])); else NSLog(@"💛 View controller Will appear: %@", NSStringFromClass([self class])); 

Debido a que el código anterior puede aparecer incorrectamente en plataforms que no son OS-X, adjunto una captura de pantalla de XCode, que muestra el código y la salida de logging:

Captura de pantalla de X Code con Apple Color Emoji en código y salida de registro

Una línea como esta funciona para mí:

 NSLog(@"\e[1;31mRed text here\e[m normal text here"); 

(Más colors disponibles aquí )

Tenga en count que realmente debe ver su salida en la console normal, ya que la console de debugging Xcode no parece ser compatible con la coloración.

El enfoque de Ayoy parece funcionar en general en una aplicación basada en línea de command con printf :

Sin embargo, no creo que esto funcione con la console Xcode integrada:

Esta:

 NSLog(@"\e[1;31mRed text here\e[m normal text here"); 

… resulta en esto:

Puede colorear su salida NSLog usando este complemento Xcode: https://github.com/DeepIT/XcodeColors

Escribí algunas líneas con mis instrucciones de configuration rápida y macros personalizadas simples .

Actualización : ahora estoy usando NSLogger con soporte de color. Muy poderoso