Mark Walters <markwalters1009@gmail.com> writes: > +(defvar notmuch-pick-json-parser nil > + "Incremental JSON parser for the search process filter.") > + > +(defun notmuch-pick-process-filter (proc string) > + "Process and filter the output of \"notmuch show\" (for pick)" > + (let ((results-buf (process-buffer proc)) > + (parse-buf (process-get proc 'parse-buf)) > + (inhibit-read-only t) > + done) > + (if (not (buffer-live-p results-buf)) > + (delete-process proc) > + (with-current-buffer parse-buf > + ;; Insert new data > + (save-excursion > + (goto-char (point-max)) > + (insert string))) > + (with-current-buffer results-buf > + (save-excursion > + (goto-char (point-max)) > + (while (not done) > + (condition-case nil > + (case notmuch-pick-process-state This looks awfully familiar. Not looking too close, but why can't this re-use the JSON parser from your other patch? Just not to rely on the other patch series? Still, let's get this pushed. Ethan