From: Mark Walters <markwalters1...@gmail.com> In preparation for the use of large queries in some cases make tagging from emacs use the new query on stdin functionality. Currently uses this for all tagging (as I could not see a reason not to). --- emacs/notmuch-tag.el | 14 +++++++++----- 1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/emacs/notmuch-tag.el b/emacs/notmuch-tag.el index 4fce3a9..4634b0d 100644 --- a/emacs/notmuch-tag.el +++ b/emacs/notmuch-tag.el @@ -59,9 +59,10 @@ the messages that were tagged" (setq search-terms (list "*"))) (split-string (with-output-to-string - (with-current-buffer standard-output - (apply 'call-process notmuch-command nil t - nil "search" "--output=tags" "--exclude=false" search-terms))) + (with-temp-buffer + (insert (mapconcat 'identity search-terms " ")) + (apply 'call-process-region (point-min) (point-max) notmuch-command nil + standard-output nil "search" "--output=tags" "--exclude=false" (list "-")))) "\n+" t)) (defun notmuch-select-tag-with-completion (prompt &rest search-terms) @@ -134,8 +135,11 @@ notmuch-after-tag-hook will be run." tag-changes) (unless (null tag-changes) (run-hooks 'notmuch-before-tag-hook) - (apply 'notmuch-call-notmuch-process "tag" - (append tag-changes (list "--" query))) + (with-temp-buffer + (insert query) + (apply 'notmuch-call-notmuch-process-region + (point-min) (point-max) + "tag" (append tag-changes (list "--" "-")))) (run-hooks 'notmuch-after-tag-hook)) ;; in all cases we return tag-changes as a list tag-changes) -- 1.7.9.1 _______________________________________________ notmuch mailing list notmuch@notmuchmail.org http://notmuchmail.org/mailman/listinfo/notmuch