mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-25 04:18:08 +01:00
notmuch-show: add optional argument for query context instead of using global binding notmuch-search-query-string
Also modify the one call to notmuch-show in notmuch.el. This makes the call (notmuch-show thread-id) will work when there is no binding for notmuch-search-query-string; e.g. when called from user code outside notmuch.
This commit is contained in:
parent
764e686f8f
commit
5e8ce15bfb
1 changed files with 10 additions and 6 deletions
16
notmuch.el
16
notmuch.el
|
@ -926,15 +926,17 @@ All currently available key bindings:
|
|||
(lambda()
|
||||
(hl-line-mode 1) ))
|
||||
|
||||
(defun notmuch-show (thread-id &optional parent-buffer)
|
||||
(defun notmuch-show (thread-id &optional parent-buffer query-context)
|
||||
"Run \"notmuch show\" with the given thread ID and display results.
|
||||
|
||||
The optional PARENT-BUFFER is the notmuch-search buffer from
|
||||
which this notmuch-show command was executed, (so that the next
|
||||
thread from that buffer can be show when done with this one)."
|
||||
thread from that buffer can be show when done with this one).
|
||||
|
||||
The optional QUERY-CONTEXT is a notmuch search term. Only messages from the thread
|
||||
matching this search term are shown if non-nil. "
|
||||
(interactive "sNotmuch show: ")
|
||||
(let ((query notmuch-search-query-string)
|
||||
(buffer (get-buffer-create (concat "*notmuch-show-" thread-id "*"))))
|
||||
(let ((buffer (get-buffer-create (concat "*notmuch-show-" thread-id "*"))))
|
||||
(switch-to-buffer buffer)
|
||||
(notmuch-show-mode)
|
||||
(set (make-local-variable 'notmuch-show-parent-buffer) parent-buffer)
|
||||
|
@ -946,7 +948,9 @@ thread from that buffer can be show when done with this one)."
|
|||
(erase-buffer)
|
||||
(goto-char (point-min))
|
||||
(save-excursion
|
||||
(call-process notmuch-command nil t nil "show" "--entire-thread" thread-id "and (" query ")")
|
||||
(let* ((basic-args (list notmuch-command nil t nil "show" "--entire-thread" thread-id))
|
||||
(args (if query-context (append basic-args (list "and (" query-context ")")) basic-args)))
|
||||
(apply 'call-process args))
|
||||
(notmuch-show-markup-messages)
|
||||
)
|
||||
(run-hooks 'notmuch-show-hook)
|
||||
|
@ -1123,7 +1127,7 @@ Complete list of currently available key bindings:
|
|||
(interactive)
|
||||
(let ((thread-id (notmuch-search-find-thread-id)))
|
||||
(if (> (length thread-id) 0)
|
||||
(notmuch-show thread-id (current-buffer))
|
||||
(notmuch-show thread-id (current-buffer) notmuch-search-query-string)
|
||||
(error "End of search results"))))
|
||||
|
||||
(defun notmuch-search-reply-to-thread ()
|
||||
|
|
Loading…
Reference in a new issue