X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=emacs%2Fnotmuch-mua.el;h=2baae5f111f5a04c5d48c6de1ccb43bf47b7fb2d;hb=e3c2be3e255f2845f6c6b45da96064e2bba681da;hp=cb89db3a47e2ca9705560a01c936bf397a1c7672;hpb=832fd1a7a63ced91d9519d217ba187ee08eea13c;p=notmuch diff --git a/emacs/notmuch-mua.el b/emacs/notmuch-mua.el index cb89db3a..2baae5f1 100644 --- a/emacs/notmuch-mua.el +++ b/emacs/notmuch-mua.el @@ -19,7 +19,6 @@ ;; ;; Authors: David Edmondson -(require 'json) (require 'message) (require 'mm-view) (require 'format-spec) @@ -146,7 +145,7 @@ list." (unless (bolp) (insert "\n"))) (defun notmuch-mua-reply (query-string &optional sender reply-all) - (let ((args '("reply" "--format=json")) + (let ((args '("reply" "--format=sexp" "--format-version=1")) reply original) (when notmuch-show-process-crypto @@ -157,14 +156,8 @@ list." (setq args (append args '("--reply-to=sender")))) (setq args (append args (list query-string))) - ;; Get the reply object as JSON, and parse it into an elisp object. - (with-temp-buffer - (apply 'call-process (append (list notmuch-command nil (list t t) nil) args)) - (goto-char (point-min)) - (let ((json-object-type 'plist) - (json-array-type 'list) - (json-false 'nil)) - (setq reply (json-read)))) + ;; Get the reply object as SEXP, and parse it into an elisp object. + (setq reply (apply #'notmuch-call-notmuch-sexp args)) ;; Extract the original message to simplify the following code. (setq original (plist-get reply :original))