summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Worth <cworth@cworth.org>2009-10-31 00:44:39 -0700
committerCarl Worth <cworth@cworth.org>2009-10-31 00:44:39 -0700
commit095a5ac382fe4fb78e7051826b56da05c4a92f26 (patch)
tree000b44fb2be7c9efc96fcd371631afe8b969464c
parenteb1a5b441be77dc875a9b0fa578441dc52ad442d (diff)
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.
-rw-r--r--notmuch.el15
1 files changed, 14 insertions, 1 deletions
diff --git a/notmuch.el b/notmuch.el
index 4f4a7c9..86b9399 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'"