diff options
author | Carl Worth <cworth@cworth.org> | 2009-10-31 00:44:39 -0700 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2009-10-31 00:44:39 -0700 |
commit | 095a5ac382fe4fb78e7051826b56da05c4a92f26 (patch) | |
tree | 000b44fb2be7c9efc96fcd371631afe8b969464c | |
parent | eb1a5b441be77dc875a9b0fa578441dc52ad442d (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.el | 15 |
1 files changed, 14 insertions, 1 deletions
@@ -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'" |