This is a refinement of my first two submissions, cleaned up and also working with reply, which the first versions were not: 1) notmuch-show returns all headers 2) notmuch-show returns extra headers configured by a command line option, which is passed from the emacs mua. As for the second, I changed the command line option to specify extra headers instead of the full set of headers. This is a lot easier, since some headers have special treatment in format_headers_sprinter, and it is also called from reply. This patch is very similar to the one storing the option in the database and using a global database pointer, except that elisp is added to pass the command line flag. There is still one global used in notmuch-show.c in order to pass down the command line argument. This really is necessary since changing the signature of format_headers_sprinter is not really feasible as shown by the patch which passed around the database pointer. I hope that having this global is more acceptable than having a global database pointer. So in summary, the patch variants I have submitted: a) notmuch-show.c returns all headers in message. Con: There are concerns about potential performance impact b) notmuch-show.c returns extra headers as configured in database. Con: Uses a file global database pointer in notmuch-show.c c) notmuch-show.c returns extra headers as specified by a command line flag. This flag is set by the emacs-mua based on notmuch-message-headers if that differs from the default list. I don't see any con with c) really. I have only concerned myself with sexp output since I personally use the emacs-mua. But I think modification for the other formats can be done as a later step. /Johan _______________________________________________ notmuch mailing list notmuch@notmuchmail.org https://notmuchmail.org/mailman/listinfo/notmuch