X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=emacs%2Fnotmuch-query.el;h=d1daffce4eaa3562999c5c345637151ec3eaf822;hp=d66baeab983b06a6be96abd7ae4bd75c945718a9;hb=71fb37d48236e49b64e300c3764c0e17e02c8f9e;hpb=45fe3547458e0c403f7501bad89860afe2fa534a diff --git a/emacs/notmuch-query.el b/emacs/notmuch-query.el index d66baeab..d1daffce 100644 --- a/emacs/notmuch-query.el +++ b/emacs/notmuch-query.el @@ -20,7 +20,6 @@ ;; Authors: David Bremner (require 'notmuch-lib) -(require 'json) (defun notmuch-query-get-threads (search-terms) "Return a list of threads of messages matching SEARCH-TERMS. @@ -29,18 +28,11 @@ A thread is a forest or list of trees. A tree is a two element list where the first element is a message, and the second element is a possibly empty forest of replies. " - (let ((args '("show" "--format=json")) - (json-object-type 'plist) - (json-array-type 'list) - (json-false 'nil)) + (let ((args '("show" "--format=sexp" "--format-version=1"))) (if notmuch-show-process-crypto (setq args (append args '("--decrypt")))) (setq args (append args search-terms)) - (with-temp-buffer - (progn - (apply 'call-process (append (list notmuch-command nil (list t nil) nil) args)) - (goto-char (point-min)) - (json-read))))) + (apply #'notmuch-call-notmuch-sexp args))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Mapping functions across collections of messages.