diff options
author | Michael Stapelberg <michael@stapelberg.de> | 2012-02-16 23:29:29 +0000 |
---|---|---|
committer | Michael Stapelberg <michael@stapelberg.de> | 2012-02-16 23:30:54 +0000 |
commit | d5b4c8e368050cf1b84b03c1379bbbc3c817a713 (patch) | |
tree | 2f918d4c5b95a05ebec68bceec35f7d4fa9a0c4e /src/print_battery_info.c | |
parent | 7149f6f78e0d105f02d54e1db60db8b191a98acb (diff) |
Implement the i3bar JSON protocol
This hardcodes all the JSON parts. Strings are not properly escaped currently.
The best/easiest way to fix this is by actually using libyajl.
Diffstat (limited to 'src/print_battery_info.c')
-rw-r--r-- | src/print_battery_info.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/print_battery_info.c b/src/print_battery_info.c index 6ee8989..10137c2 100644 --- a/src/print_battery_info.c +++ b/src/print_battery_info.c @@ -36,6 +36,9 @@ void print_battery_info(int number, const char *path, const char *format, bool l memset(remainingbuf, '\0', sizeof(remainingbuf)); memset(emptytimebuf, '\0', sizeof(emptytimebuf)); + if (output_format == O_I3BAR) + printf("{\"name\":\"battery\", \"instance\": \"%s\", \"full_text\":\"", path); + #if defined(LINUX) static char batpath[512]; sprintf(batpath, path, number); @@ -185,4 +188,7 @@ void print_battery_info(int number, const char *path, const char *format, bool l walk += strlen("emptytime"); } } + + if (output_format == O_I3BAR) + printf("\"}"); } |