From: mawww@kakoune.org
To: notmuch@notmuchmail.org
Subject: [PATCH 2/2] cli: notmuch show support for --include-html with --format=text
Date: Wed, 31 Oct 2018 10:54:32 +1100 [thread overview]
Message-ID: <20181030235432.4901-2-mawww@kakoune.org> (raw)
In-Reply-To: <20181030235432.4901-1-mawww@kakoune.org>
From: Maxime Coste <mawww@kakoune.org>
---
NEWS | 3 ++-
doc/man1/notmuch-show.rst | 11 ++++++-----
notmuch-show.c | 9 ++++++---
test/T190-multipart.sh | 9 +++++++++
4 files changed, 23 insertions(+), 9 deletions(-)
diff --git a/NEWS b/NEWS
index 64de9999..434f920a 100644
--- a/NEWS
+++ b/NEWS
@@ -4,7 +4,8 @@ Notmuch 0.29 (UNRELEASED)
Command Line Interface
----------------------
-`notmuch show` now supports --body=false with --format=text
+`notmuch show` now supports --body=false and --include-html with
+--format=text
Notmuch 0.28 (2018-10-12)
=========================
diff --git a/doc/man1/notmuch-show.rst b/doc/man1/notmuch-show.rst
index f3c32fd2..a2708a04 100644
--- a/doc/man1/notmuch-show.rst
+++ b/doc/man1/notmuch-show.rst
@@ -183,11 +183,12 @@ Supported options for **show** include
output is much faster and substantially smaller.
``--include-html``
- Include "text/html" parts as part of the output (currently only
- supported with ``--format=json`` and ``--format=sexp``). By default,
- unless ``--part=N`` is used to select a specific part or
- ``--include-html`` is used to include all "text/html" parts, no
- part with content type "text/html" is included in the output.
+ Include "text/html" parts as part of the output (currently
+ only supported with ``--format=text``, ``--format=json`` and
+ ``--format=sexp``). By default, unless ``--part=N`` is used to
+ select a specific part or ``--include-html`` is used to include all
+ "text/html" parts, no part with content type "text/html" is included
+ in the output.
A common use of **notmuch show** is to display a single thread of email
messages. For this, use a search term of "thread:<thread-id>" as can be
diff --git a/notmuch-show.c b/notmuch-show.c
index 42fe27cc..07e9a5db 100644
--- a/notmuch-show.c
+++ b/notmuch-show.c
@@ -584,7 +584,8 @@ format_part_text (const void *ctx, sprinter_t *sp, mime_node_t *node,
if (leaf) {
if (g_mime_content_type_is_type (content_type, "text", "*") &&
- !g_mime_content_type_is_type (content_type, "text", "html"))
+ (params->include_html ||
+ ! g_mime_content_type_is_type (content_type, "text", "html")))
{
show_text_part_content (node->part, stream, 0);
} else {
@@ -1218,8 +1219,10 @@ notmuch_show_command (notmuch_config_t *config, int argc, char *argv[])
}
if (params.include_html &&
- (format != NOTMUCH_FORMAT_JSON && format != NOTMUCH_FORMAT_SEXP)) {
- fprintf (stderr, "Warning: --include-html only implemented for format=json and format=sexp\n");
+ (format != NOTMUCH_FORMAT_TEXT &&
+ format != NOTMUCH_FORMAT_JSON &&
+ format != NOTMUCH_FORMAT_SEXP)) {
+ fprintf (stderr, "Warning: --include-html only implemented for format=text, format=json and format=sexp\n");
}
query_string = query_string_from_args (config, argc-opt_index, argv+opt_index);
diff --git a/test/T190-multipart.sh b/test/T190-multipart.sh
index 81c4d772..9ad141cb 100755
--- a/test/T190-multipart.sh
+++ b/test/T190-multipart.sh
@@ -325,6 +325,15 @@ Non-text part: text/html
EOF
test_expect_equal_file EXPECTED OUTPUT
+test_begin_subtest "--format=text --include-html --part=5, rfc822's html part"
+notmuch show --format=text --include-html --part=5 'id:87liy5ap00.fsf@yoom.home.cworth.org' >OUTPUT
+cat <<EOF >EXPECTED
+\fpart{ ID: 5, Content-type: text/html
+<p>This is an embedded message, with a multipart/alternative part.</p>
+\fpart}
+EOF
+test_expect_equal_file EXPECTED OUTPUT
+
test_begin_subtest "--format=text --part=6, rfc822's text part"
notmuch show --format=text --part=6 'id:87liy5ap00.fsf@yoom.home.cworth.org' >OUTPUT
cat <<EOF >EXPECTED
--
2.14.5
next prev parent reply other threads:[~2018-10-31 3:33 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-10-25 1:44 [PATCH] cli: Support --include-html and --body=false for --format=text mawww
2018-10-25 18:55 ` Jani Nikula
2018-10-26 2:12 ` mawww
2018-10-28 12:56 ` David Bremner
2018-10-30 23:54 ` [PATCH 1/2] cli: notmuch show support for --body=false with --format=text mawww
2018-10-30 23:54 ` mawww [this message]
2018-11-16 3:05 ` [PATCH 2/2] cli: notmuch show support for --include-html " mawww
2018-11-19 14:07 ` David Bremner
2018-11-23 19:24 ` Tomi Ollila
2018-11-24 13:19 ` David Bremner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://notmuchmail.org/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20181030235432.4901-2-mawww@kakoune.org \
--to=mawww@kakoune.org \
--cc=notmuch@notmuchmail.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://yhetil.org/notmuch.git/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).