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 <[email protected]>
---
 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 -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to