Re: [PATCH] emacs: Switch mode before pop-to-buffer

Subject: Re: [PATCH] emacs: Switch mode before pop-to-buffer

Date: Fri, 06 Mar 2026 09:39:33 +0200

To: Aurelien Rouene, notmuch@notmuchmail.org

Cc:

From: Tomi Ollila


On Thu, Mar 05 2026, Aurelien Rouene wrote:

> When showing an email using notmuch-show-mode, set the mode
> "notmuch-show-mode" before using "pop-to-buffer-same-window", to be
> able to match on the major-mode with an entry in "display-buffer-alist".
>
> Using the major mode is the the only mean to set display rules,
> because the buffer title is set to the title of the email and is not fixed.
>
> Signed-off-by: Aurelien Rouene <aurelien@rouene.fr>

This change looks sensible to me,
Tomi


> ---
>  emacs/notmuch-show.el | 14 ++++++++------
>  1 file changed, 8 insertions(+), 6 deletions(-)
>
> diff --git a/emacs/notmuch-show.el b/emacs/notmuch-show.el
> index 19b51753..883516fa 100644
> --- a/emacs/notmuch-show.el
> +++ b/emacs/notmuch-show.el
> @@ -1400,15 +1400,17 @@ function is used.
>  Returns the buffer containing the messages, or NIL if no messages
>  matched."
>    (interactive "sNotmuch show: \nP")
> -  (let ((buffer-name (generate-new-buffer-name
> -		      (or buffer-name
> -			  (concat "*notmuch-" thread-id "*"))))
> -	(mm-inline-override-types (notmuch--inline-override-types)))
> +  (let* ((buffer-name (generate-new-buffer-name
> +		       (or buffer-name
> +			   (concat "*notmuch-" thread-id "*"))))
> +	 (buffer (get-buffer-create buffer-name))
> +	 (mm-inline-override-types (notmuch--inline-override-types)))
>  
> -    (pop-to-buffer-same-window (get-buffer-create buffer-name))
> +    (with-current-buffer buffer
> +      (notmuch-show-mode))
> +    (pop-to-buffer-same-window buffer)
>      ;; No need to track undo information for this buffer.
>      (setq buffer-undo-list t)
> -    (notmuch-show-mode)
>      ;; Set various buffer local variables to their appropriate initial
>      ;; state. Do this after enabling `notmuch-show-mode' so that they
>      ;; aren't wiped out.
> -- 
> 2.53.0
>
> _______________________________________________
> notmuch mailing list -- notmuch@notmuchmail.org
> To unsubscribe send an email to notmuch-leave@notmuchmail.org
_______________________________________________
notmuch mailing list -- notmuch@notmuchmail.org
To unsubscribe send an email to notmuch-leave@notmuchmail.org

Thread: