On Sat, Nov 07 2015, Mark Walters wrote:
> From: David Edmondson <d...@dme.org>
>
> This allows callers of notmuch-show-insert-bodypart to use a `let'
> binding to override the default function for specifying when part
> headers should be inserted.

Looks fine.

> ---
>  emacs/notmuch-show.el | 16 ++++++++++++----
>  1 file changed, 12 insertions(+), 4 deletions(-)
>
> diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
> index f8184e2..f4a65cc 100644
> --- a/emacs/notmuch-show.el
> +++ b/emacs/notmuch-show.el
> @@ -945,8 +945,16 @@ (defun notmuch-show-mime-type (part)
>            "text/x-diff")
>       content-type)))
>  
> +;; The following variable can be overridden by let bindings.
> +(defvar notmuch-show-insert-header-p-function 'notmuch-show-insert-header-p
> +  "Specify which function decides which part headers get inserted.
> +
> +The function should take two parameters, PART and HIDE, and
> +should return non-NIL if a header button should be inserted for
> +this part.")
> +
>  (defun notmuch-show-insert-header-p (part hide)
> -  "Return non-NIL if a header button should be inserted for this part."
> +  ;; Show all part buttons except for the first part if it is text/plain.
>    (let ((mime-type (notmuch-show-mime-type part)))
>      (not (and (string= mime-type "text/plain")
>             (<= (plist-get part :id) 1)))))
> @@ -965,9 +973,9 @@ (defun notmuch-show-insert-bodypart (msg part depth 
> &optional hide)
>                   (> notmuch-show-max-text-part-size 0)
>                   (> (length (plist-get part :content)) 
> notmuch-show-max-text-part-size)))
>        (beg (point))
> -      ;; We omit the part button for the first (or only) part if
> -      ;; this is text/plain, or HIDE is 'no-buttons.
> -      (button (when (notmuch-show-insert-header-p part hide)
> +      ;; This default header-p function omits the part button for
> +      ;; the first (or only) part if this is text/plain.
> +      (button (when (funcall notmuch-show-insert-header-p-function part hide)
>                  (notmuch-show-insert-part-header nth mime-type content-type 
> (plist-get part :filename))))
>        ;; Hide the part initially if HIDE is t, or if it is too long
>        ;; and we have a button to allow toggling (thus reply which
> -- 
> 2.1.4
_______________________________________________
notmuch mailing list
notmuch@notmuchmail.org
https://notmuchmail.org/mailman/listinfo/notmuch

Reply via email to