X-Git-Url: https://git.notmuchmail.org/git?a=blobdiff_plain;f=emacs%2Fnotmuch-query.el;h=6e9f406d5c8fddf8559d8fc666af2929b4163ede;hb=5461c31d648f8ee6a8fb713c96ad10bc6d733c29;hp=0d6e7759a6b57593597dbcdb70afe5128ee1b3bf;hpb=8cbb5114a20c1217f23977fd5edca99a0b7a2955;p=notmuch diff --git a/emacs/notmuch-query.el b/emacs/notmuch-query.el index 0d6e7759..6e9f406d 100644 --- a/emacs/notmuch-query.el +++ b/emacs/notmuch-query.el @@ -22,22 +22,18 @@ (require 'notmuch-lib) (require 'json) -(defun notmuch-query-get-threads (search-terms &rest options) +(defun notmuch-query-get-threads (search-terms) "Return a list of threads of messages matching SEARCH-TERMS. 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 (append '("show" "--format=json") search-terms)) - (json-object-type 'plist) - (json-array-type 'list) - (json-false 'nil)) - (with-temp-buffer - (progn - (apply 'call-process (append (list notmuch-command nil t nil) args)) - (goto-char (point-min)) - (json-read))))) + (let ((args '("show" "--format=json" "--format-version=1"))) + (if notmuch-show-process-crypto + (setq args (append args '("--decrypt")))) + (setq args (append args search-terms)) + (apply #'notmuch-call-notmuch-json args))) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Mapping functions across collections of messages. @@ -47,7 +43,7 @@ is a possibly empty forest of replies. (apply 'append (mapcar (lambda (tree) - (funcall mapper fn tree)) + (funcall mapper function tree)) seq))) (defun notmuch-query-map-threads (fn threads)