notmuch-show: Add unix and relative dates to the JSON output

Include a 'date_unix' and 'date_relative' field in the JSON output for
each message. 'date_relative' can be used by a UI implementation,
whereas 'date_unix' is useful when scripting.
This commit is contained in:
David Edmondson 2010-03-23 09:40:48 +00:00
parent f689c83af4
commit 930a47935f

View file

@ -139,11 +139,17 @@ format_message_json (const void *ctx, notmuch_message_t *message, unused (int in
notmuch_tags_t *tags;
int first = 1;
void *ctx_quote = talloc_new (ctx);
time_t date;
const char *relative_date;
printf ("\"id\": %s, \"match\": %s, \"filename\": %s, \"tags\": [",
date = notmuch_message_get_date (message);
relative_date = notmuch_time_relative_date (ctx, date);
printf ("\"id\": %s, \"match\": %s, \"filename\": %s, \"date_unix\": %ld, \"date_relative\": \"%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)));
json_quote_str (ctx_quote, notmuch_message_get_filename (message)),
date, relative_date);
for (tags = notmuch_message_get_tags (message);
notmuch_tags_valid (tags);