[PATCH 1/2] emacs: show: use interactive instead of current-prefix-arg
Austin Clements
amdragon at MIT.EDU
Sat Oct 12 20:31:58 PDT 2013
Code looks good. Two minor comments below.
Quoth Mark Walters on Oct 09 at 9:01 pm:
> Currently notmuch-show looks at the prefix-arg directly via
> current-prefix-arg. This changes it to use the interactive
> specification.
> ---
> emacs/notmuch-show.el | 12 +++++++-----
> emacs/notmuch.el | 5 +++--
> 2 files changed, 10 insertions(+), 7 deletions(-)
>
> diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
> index 5d7e24b..15f9ce6 100644
> --- a/emacs/notmuch-show.el
> +++ b/emacs/notmuch-show.el
> @@ -1080,15 +1080,17 @@ buttons for a corresponding notmuch search."
> (make-text-button (first link) (second link)
> :type 'notmuch-button-type
> 'action `(lambda (arg)
> - (notmuch-show ,(third link)))
> + (notmuch-show ,(third link) current-prefix-arg))
Hmm. Does this work? Can you activate the button with C-u RET?
> 'follow-link t
> 'help-echo "Mouse-1, RET: search for this message"
> 'face goto-address-mail-face)))))
>
> ;;;###autoload
> -(defun notmuch-show (thread-id &optional parent-buffer query-context buffer-name)
> +(defun notmuch-show (thread-id &optional elide-toggle parent-buffer query-context buffer-name)
> "Run \"notmuch show\" with the given thread ID and display results.
>
> +The optional ELIDE-TOGGLE inverts the default elide behaviour.
"ELIDE-TOGGLE, if non-nil, inverts the default elide behavior."?
> +
> 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
> @@ -1102,7 +1104,7 @@ The optional BUFFER-NAME provides the name of the buffer in
> which the message thread is shown. If it is nil (which occurs
> when the command is called interactively) the argument to the
> function is used."
> - (interactive "sNotmuch show: ")
> + (interactive "sNotmuch show: \nP")
> (let ((buffer-name (generate-new-buffer-name
> (or buffer-name
> (concat "*notmuch-" thread-id "*")))))
> @@ -1112,9 +1114,9 @@ function is used."
> (setq notmuch-show-process-crypto notmuch-crypto-process-mime)
> ;; Set the default value for
> ;; `notmuch-show-elide-non-matching-messages' in this buffer. If
> - ;; there is a prefix argument, invert the default.
> + ;; elide-toggle is set, invert the default.
> (setq notmuch-show-elide-non-matching-messages notmuch-show-only-matching-messages)
> - (if current-prefix-arg
> + (if elide-toggle
> (setq notmuch-show-elide-non-matching-messages (not notmuch-show-elide-non-matching-messages)))
>
> (setq notmuch-show-thread-id thread-id
> diff --git a/emacs/notmuch.el b/emacs/notmuch.el
> index 0ff248b..7124d0a 100644
> --- a/emacs/notmuch.el
> +++ b/emacs/notmuch.el
> @@ -486,13 +486,14 @@ If BARE is set then do not prefix with \"thread:\""
> "Return a list of authors for the current region"
> (notmuch-search-properties-in-region :subject beg end))
>
> -(defun notmuch-search-show-thread ()
> +(defun notmuch-search-show-thread (&optional elide-toggle)
> "Display the currently selected thread."
> - (interactive)
> + (interactive "P")
> (let ((thread-id (notmuch-search-find-thread-id))
> (subject (notmuch-search-find-subject)))
> (if (> (length thread-id) 0)
> (notmuch-show thread-id
> + elide-toggle
> (current-buffer)
> notmuch-search-query-string
> ;; Name the buffer based on the subject.
More information about the notmuch
mailing list