notmuch.el: Insert a newline if the last line of a part is missing one.

I think there's a GMime bug that we're getting parts decoded without a
final newline (the encoded parts seem to have them just fine). We can
workaround the bug easily enough by finding a part-closing delimiter
that is not at the beginning of a line, and if so, just insert a
newline.

Without this, the one-line-summary of the next message would continue
on the same line as the last line of the previous message, (and this
would often happen for mailing-list messages where mailman would add
an extra part for its signature block).
This commit is contained in:
Carl Worth 2009-11-16 14:53:02 -08:00
parent c004e1e04b
commit ea484f0ebf

View file

@ -464,11 +464,15 @@ which this thread was originally shown."
(let ((beg (point-marker)))
(re-search-forward notmuch-show-part-end-regexp)
(let ((end (copy-marker (match-beginning 0))))
(goto-char end)
(if (not (bolp))
(insert "\n"))
(indent-rigidly beg end depth)
(notmuch-show-markup-citations-region beg end depth)
; Advance to the next part (if any) (so the outer loop can
; determine whether we've left the current message.
(re-search-forward notmuch-show-part-begin-regexp nil t))))
(if (re-search-forward notmuch-show-part-begin-regexp nil t)
(beginning-of-line)))))
(goto-char end)))
(defun notmuch-show-markup-parts-region (beg end depth)