From 095a5ac382fe4fb78e7051826b56da05c4a92f26 Mon Sep 17 00:00:00 2001 From: Carl Worth Date: Sat, 31 Oct 2009 00:44:39 -0700 Subject: [PATCH] notmuch.el: Switch from start-process to call-process We now get the point staying right at the top where we want it. We also don't get any extraneous noise about "Process notmuch completed" or anything like that. Just the output in a read-only buffer. --- notmuch.el | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/notmuch.el b/notmuch.el index 4f4a7c9c..86b93991 100644 --- a/notmuch.el +++ b/notmuch.el @@ -43,7 +43,20 @@ (defun notmuch-search (query) "Run \"notmuch search\" with the given query string and display results." (interactive "sNotmuch search: ") - (start-process "notmuch-search" (concat "*notmuch-search-" query) "notmuch" "search" query)) + (let ((buffer (get-buffer-create (concat "*notmuch-search-" query)))) + (switch-to-buffer buffer) + (setq buffer-read-only t) + (let ((proc (get-buffer-process (current-buffer))) + (inhibit-read-only t)) + (if proc + (error "notmuch search process already running for query `%s'" query) + ) + (erase-buffer) + (beginning-of-buffer) + (save-excursion + (call-process "notmuch" nil t nil "search" query) + ) + ))) (defun notmuch () "Run notmuch to display all mail with tag of 'inbox'"