From 0427fddb5a919ae6b3a4205e057ae36133bfbc47 Mon Sep 17 00:00:00 2001 From: Drew DeVault Date: Sat, 8 Aug 2015 17:01:22 -0400 Subject: Add logging and new windows into layout tree --- sway/log.c | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 sway/log.c (limited to 'sway/log.c') diff --git a/sway/log.c b/sway/log.c new file mode 100644 index 00000000..6ac7026f --- /dev/null +++ b/sway/log.c @@ -0,0 +1,43 @@ +#include "log.h" +#include +#include +#include + +int colored = 1; +int v = 0; + +const char *verbosity_colors[] = { + "", // L_SILENT + "\x1B[1;31m", // L_ERROR + "\x1B[1;34m", // L_INFO + "\x1B[1;30m", // L_DEBUG +}; + +void init_log(int verbosity) { + v = verbosity; +} + +void sway_abort(char *format, ...) { + fprintf(stderr, "ERROR: "); + va_list args; + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); + fprintf(stderr, "\n"); + exit(1); +} + +void sway_log(int verbosity, char* format, ...) { + if (verbosity <= v) { + int c = verbosity; + if (c > sizeof(verbosity_colors) / sizeof(char *)) { + c = sizeof(verbosity_colors) / sizeof(char *) - 1; + } + fprintf(stderr, verbosity_colors[c]); + va_list args; + va_start(args, format); + vfprintf(stderr, format, args); + va_end(args); + fprintf(stderr, "\x1B[0m\n"); + } +} -- cgit v1.2.3-54-g00ecf