From 79bbaa69ab1c3475bb4775b447da0fda0ca05cd7 Mon Sep 17 00:00:00 2001 From: Cyrille Bagard Date: Mon, 23 Apr 2018 21:59:12 +0200 Subject: Formatted the log messages displayed in batch mode. --- plugins/devdbg/speed.c | 2 +- src/core/logs.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 49 insertions(+), 2 deletions(-) diff --git a/plugins/devdbg/speed.c b/plugins/devdbg/speed.c index 9cb7d45..f967e43 100644 --- a/plugins/devdbg/speed.c +++ b/plugins/devdbg/speed.c @@ -98,7 +98,7 @@ G_MODULE_EXPORT void process_binary_disassembly(const GPluginModule *plugin, Plu take_measure(&measure->points[1], &measure->usages[1]); #define SHOW_SPEED(pg, sm, title, p0, p1) \ - g_plugin_module_log_variadic_message(pg, LMT_INFO, title " : %.2g (%.2g)", \ + g_plugin_module_log_variadic_message(pg, LMT_INFO, title ": %.2g (%.2g)", \ (double)(sm->points[p1] - sm->points[p0]) / CLOCKS_PER_SEC, \ (sm->usages[p1] - sm->usages[p0]) / 1000000.0); diff --git a/src/core/logs.c b/src/core/logs.c index 8327203..aedc78e 100644 --- a/src/core/logs.c +++ b/src/core/logs.c @@ -25,8 +25,10 @@ #include +#include +#include "../common/extstr.h" #include "../gui/core/panels.h" #include "../gui/panels/log.h" @@ -186,6 +188,51 @@ void log_variadic_message(LogMessageType type, const char *fmt, ...) static void print_message_without_gui(LogMessageType type, const char *msg) { - printf("!! MSG :: %s\n", msg); + char *formatted; /* Copie formatée du message */ + const char *prefix; /* Introduction de la ligne */ + + formatted = strdup(msg); + +#define FOREGROUND_LIGHT_GRAY "\e[37m" +#define FOREGROUND_RED "\e[91m" + +#define BACKGROUND_RED "\e[101m" + +#define BOLD "\e[1m" +#define ITALIC "\e[3m" + +#define RESET "\e[0m" + + switch (type) + { + case LMT_INFO: + default: + prefix = "i"; + break; + + case LMT_PROCESS: + prefix = FOREGROUND_LIGHT_GRAY "*" RESET; + break; + + case LMT_WARNING: + prefix = FOREGROUND_RED "!" RESET; + break; + + case LMT_ERROR: + case LMT_BAD_BINARY: + prefix = BACKGROUND_RED "!" RESET; + break; + + } + + formatted = strrpl(formatted, "", BOLD); + formatted = strrpl(formatted, "", RESET); + + formatted = strrpl(formatted, "", ITALIC); + formatted = strrpl(formatted, "", RESET); + + printf("[%s] %s\n", prefix, formatted); + + free(formatted); } -- cgit v0.11.2-87-g4458