unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
From: Tomi Ollila <tomi.ollila@iki.fi>
To: mawww@kakoune.org, notmuch@notmuchmail.org
Subject: Re: [PATCH 2/2] cli: notmuch show support for --include-html with --format=text
Date: Fri, 23 Nov 2018 21:24:40 +0200	[thread overview]
Message-ID: <m2o9afvbpj.fsf@guru.guru-group.fi> (raw)
In-Reply-To: <20181030235432.4901-2-mawww@kakoune.org>

On Wed, Oct 31 2018, mawww@kakoune.org wrote:

> From: Maxime Coste <mawww@kakoune.org>

To me these changes looks simple and trivial enough to be merged
(if these works, but code LGTM)

Tomi


>
> ---
>  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
>
> _______________________________________________
> notmuch mailing list
> notmuch@notmuchmail.org
> https://notmuchmail.org/mailman/listinfo/notmuch

  parent reply	other threads:[~2018-11-23 19:24 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         ` [PATCH 2/2] cli: notmuch show support for --include-html " mawww
2018-11-16  3:05           ` mawww
2018-11-19 14:07             ` David Bremner
2018-11-23 19:24           ` Tomi Ollila [this message]
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=m2o9afvbpj.fsf@guru.guru-group.fi \
    --to=tomi.ollila@iki.fi \
    --cc=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).