The previous json patches forgot to add the notmuch tags to the json output. This is inconsistent to the text output so here they are. We just output a 'tags' field that sends a space delimited list of json-encoded notmuch tags.
Signed-off-by: Sebastian Spaeth <Sebastian at SSpaeth.de> --- notmuch-show.c | 13 ++++++++++++- 1 files changed, 12 insertions(+), 1 deletions(-) diff --git a/notmuch-show.c b/notmuch-show.c index f21914f..d3a4e9f 100644 --- a/notmuch-show.c +++ b/notmuch-show.c @@ -136,13 +136,24 @@ format_message_text (unused (const void *ctx), notmuch_message_t *message, int i static void format_message_json (const void *ctx, notmuch_message_t *message, unused (int indent)) { + notmuch_tags_t *tags; + int first = 1; void *ctx_quote = talloc_new (ctx); - printf ("\"id\": %s, \"match\": %s, \"filename\": %s", + printf ("\"id\": %s, \"match\": %s, \"filename\": %s, \"tags\": [", json_quote_str (ctx_quote, notmuch_message_get_message_id (message)), notmuch_message_get_flag (message, NOTMUCH_MESSAGE_FLAG_MATCH) ? "true" : "false", json_quote_str (ctx_quote, notmuch_message_get_filename (message))); + for (tags = notmuch_message_get_tags (message); + notmuch_tags_has_more (tags); + notmuch_tags_advance (tags)) + { + printf("%s%s", first ? "" : ",", + json_quote_str (ctx_quote, notmuch_tags_get (tags))); + first = 0; + } + printf("]"); talloc_free (ctx_quote); } -- 1.6.3.3