[notmuch] [PATCH 2/3] notmuch-show.c: make calls to format functions conditional
david at tethera.net
david at tethera.net
Sat Dec 19 06:55:23 PST 2009
From: David Bremner <bremner at unb.ca>
This makes it easier to define minimal formats without defining several
dummy functions that do nothing.
---
notmuch-show.c | 13 +++++++++----
1 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/notmuch-show.c b/notmuch-show.c
index b6e3f44..51aa87d 100644
--- a/notmuch-show.c
+++ b/notmuch-show.c
@@ -326,14 +326,17 @@ static void
show_message (void *ctx, const show_format_t *format, notmuch_message_t *message, int indent)
{
fputs (format->message_start, stdout);
- format->message(ctx, message, indent);
+ if (format->message)
+ format->message(ctx, message, indent);
fputs (format->header_start, stdout);
- format->header(ctx, message);
+ if (format->header)
+ format->header(ctx, message);
fputs (format->header_end, stdout);
fputs (format->body_start, stdout);
- show_message_body (notmuch_message_get_filename (message), format->part);
+ if (format->part)
+ show_message_body (notmuch_message_get_filename (message), format->part);
fputs (format->body_end, stdout);
fputs (format->message_end, stdout);
@@ -408,7 +411,9 @@ notmuch_show_command (void *ctx, unused (int argc), unused (char *argv[]))
}
if (STRNCMP_LITERAL (argv[i], "--format=") == 0) {
opt = argv[i] + sizeof ("--format=") - 1;
- if (strcmp (opt, "text") == 0) {
+ if (strcmp (opt, "tabular") == 0) {
+ format = &format_tabular;
+ } else if (strcmp (opt, "text") == 0) {
format = &format_text;
} else if (strcmp (opt, "json") == 0) {
format = &format_json;
--
1.6.5.3
More information about the notmuch
mailing list