From: Carl Worth Date: Sat, 31 Oct 2009 07:44:39 +0000 (-0700) Subject: notmuch.el: Switch from start-process to call-process X-Git-Tag: 0.1~644 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=095a5ac382fe4fb78e7051826b56da05c4a92f26;hp=eb1a5b441be77dc875a9b0fa578441dc52ad442d 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. --- 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'"