emacs: Optionally show all parts in multipart/alternative.

Add a variable `notmuch-show-all-multipart/alternative-parts' that
allows the user to indicate that all candidate sub-parts of a
multipart/alternative part should be shown rather than just the
preferred part. The default is `nil', showing only the preferred part.

This is mostly a debugging aid.

Signed-off-by: Jameson Rollins <jrollins@finestructure.net>
This commit is contained in:
David Edmondson 2010-05-17 13:41:12 +01:00 committed by Carl Worth
parent 97bc272b9c
commit 31bd2872c3

View file

@ -83,6 +83,12 @@ any given message."
notmuch-wash-elide-blank-lines notmuch-wash-elide-blank-lines
notmuch-wash-excerpt-citations)) notmuch-wash-excerpt-citations))
;; Mostly useful for debugging.
(defcustom notmuch-show-all-multipart/alternative-parts nil
"Should all parts of multipart/alternative parts be shown?"
:group 'notmuch
:type 'boolean)
(defcustom notmuch-show-indent-multipart nil (defcustom notmuch-show-indent-multipart nil
"Should the sub-parts of a multipart/* part be indented?" "Should the sub-parts of a multipart/* part be indented?"
;; dme: Not sure which is a good default. ;; dme: Not sure which is a good default.
@ -319,7 +325,8 @@ current buffer, if possible."
;; should be chosen if there are more than one that match? ;; should be chosen if there are more than one that match?
(mapc (lambda (inner-part) (mapc (lambda (inner-part)
(let ((inner-type (plist-get inner-part :content-type))) (let ((inner-type (plist-get inner-part :content-type)))
(if (string= chosen-type inner-type) (if (or notmuch-show-all-multipart/alternative-parts
(string= chosen-type inner-type))
(notmuch-show-insert-bodypart msg inner-part depth) (notmuch-show-insert-bodypart msg inner-part depth)
(notmuch-show-insert-part-header (plist-get inner-part :id) inner-type inner-type nil " (not shown)")))) (notmuch-show-insert-part-header (plist-get inner-part :id) inner-type inner-type nil " (not shown)"))))
inner-parts) inner-parts)