[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#69983: Use category for display-buffer-alist
From: |
Juri Linkov |
Subject: |
bug#69983: Use category for display-buffer-alist |
Date: |
Sun, 24 Mar 2024 19:19:16 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/30.0.50 (x86_64-pc-linux-gnu) |
'display-comint-buffer-action' and 'display-tex-shell-buffer-action'
are out of place in window.el, and they are redundant per se.
What these variables are trying to achieve is already possible
to do by using a 'category' in 'display-buffer-alist'.
Here is an already supported example:
#+begin_src emacs-lisp
(add-to-list 'display-buffer-alist
`(,(lambda (_buffer-name action)
(eq (alist-get 'category action) 'comint))
(display-buffer-in-direction)
(direction . top)))
(display-buffer (get-buffer-create "blablabla")
'(nil (category . comint)))
#+end_src
The advantage of this approach is removing a need
of writing a complex regexp to match the buffer name.
Using this approach it's possible just to mark
all related callers with the same category, e.g.:
diff --git a/lisp/cmuscheme.el b/lisp/cmuscheme.el
index c84a1809322..ccd7f2f713f 100644
--- a/lisp/cmuscheme.el
+++ b/lisp/cmuscheme.el
@@ -238,7 +238,7 @@ run-scheme
(inferior-scheme-mode)))
(setq scheme-program-name cmd)
(setq scheme-buffer "*scheme*")
- (pop-to-buffer "*scheme*" display-comint-buffer-action))
+ (pop-to-buffer "*scheme*" '(nil (category . comint))))
diff --git a/lisp/progmodes/inf-lisp.el b/lisp/progmodes/inf-lisp.el
index 141bd18cf1e..1aa3bbd4239 100644
--- a/lisp/progmodes/inf-lisp.el
+++ b/lisp/progmodes/inf-lisp.el
@@ -308,7 +308,7 @@ inferior-lisp
"inferior-lisp" (car cmdlist) nil (cdr cmdlist)))
(inferior-lisp-mode)))
(setq inferior-lisp-buffer "*inferior-lisp*")
- (pop-to-buffer "*inferior-lisp*" display-comint-buffer-action))
+ (pop-to-buffer "*inferior-lisp*" '(nil (category . comint))))
Or we need to keep backward-compatibility? Then the first step
to deprecate there variables would be something like this:
diff --git a/lisp/window.el b/lisp/window.el
index bea050e181c..fa417817d1d 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -8912,7 +8944,7 @@ pop-to-buffer-same-window
another window."
(pop-to-buffer buffer display-buffer--same-window-action norecord))
-(defcustom display-comint-buffer-action display-buffer--same-window-action
+(defcustom display-comint-buffer-action (append
display-buffer--same-window-action '((category . comint)))
"`display-buffer' action for displaying comint buffers."
:type display-buffer--action-custom-type
:risky t
- bug#69983: Use category for display-buffer-alist,
Juri Linkov <=
- bug#69983: Use category for display-buffer-alist, martin rudalics, 2024/03/25
- bug#69983: Use category for display-buffer-alist, Juri Linkov, 2024/03/25
- bug#69983: Use category for display-buffer-alist, martin rudalics, 2024/03/26
- bug#69983: Use category for display-buffer-alist, Juri Linkov, 2024/03/27
- bug#69983: Use category for display-buffer-alist, Juri Linkov, 2024/03/28
- bug#69983: Use category for display-buffer-alist, Eli Zaretskii, 2024/03/28
- bug#69983: Use category for display-buffer-alist, Juri Linkov, 2024/03/28
- bug#69983: Use category for display-buffer-alist, martin rudalics, 2024/03/28
- bug#69983: Use category for display-buffer-alist, Juri Linkov, 2024/03/28
- bug#69983: Use category for display-buffer-alist, martin rudalics, 2024/03/29