Hi everyone, Here is a new and much-improved version of my series [1] adding support for quoting HTML parts in replies using a JSON reply format. This version is, as the diffs indicate, much more ambitious than previous versions, especially on the emacs front:
* The JSON reply format now only includes headers (for both the original and reply messages), as Dmitry pointed out that non-UTF8 characters sets cannot be properly inlined in JSON. * Thus, emacs now uses notmuch show to fetch the body of the original message before creating the quoted body of the reply. * In order to simplify this use of show, the JSON format no longer implies --entire-thread. The other consumer of --format=json (notmuch-query.el) has been updated to use --entire-thread when that's what it means, and the man page has been updated. * Emacs now pays attention to multipart structures when deciding which parts to quote in a reply. This uses essentially the same logic as in show, some of which has been factored out into notmuch-lib.el. In particular, emacs will include all the text parts of a message, except the non-preferred ones in a multipart/alternative part. * There are two new emacs test cases to test and demonstrate the new reply functionality. They show how it works a multipart/mixed and multipart/alternative messages. I think that covers everything... Please let me know if there is something I haven't explained well. And, of course, please send reviews on this extensive change. [1] id:"1326995217-27423-1-git-send-email-awg+notmuch at xvx.ca" Adam Wolfe Gordon (4): test: Add broken test for the new JSON reply format. reply: Add a JSON reply format. man: Update notmuch-reply man page for JSON format. emacs: Use the new JSON reply format and message-cite-original emacs/notmuch-lib.el | 39 +++++++++++ emacs/notmuch-mua.el | 136 +++++++++++++++++++++++++++----------- emacs/notmuch-query.el | 2 +- emacs/notmuch-show.el | 24 +------ man/man1/notmuch-reply.1 | 5 ++ man/man1/notmuch-show.1 | 6 +-- notmuch-reply.c | 167 ++++++++++++++++++++++++++++++++++------------ notmuch-show.c | 1 - test/emacs | 101 +++++++++++++++++++++++++++- test/multipart | 7 ++ 10 files changed, 375 insertions(+), 113 deletions(-) -- 1.7.5.4