Fix tex-mode display-buffer issues

* lisp/window.el (display-tex-shell-buffer-action): New defcustom.
* lisp/textmodes/tex-mode.el (tex-display-shell)
(tex-cmd-doc-view, tex-recenter-output-buffer): Use it.
(Bug#63956)
This commit is contained in:
Eli Zaretskii 2023-06-11 09:15:01 +03:00
parent 90047c38ce
commit bdb0bc2b4e
2 changed files with 11 additions and 3 deletions

View file

@ -2025,7 +2025,7 @@ In the tex shell buffer this command behaves like `comint-send-input'."
(defun tex-display-shell ()
"Make the TeX shell buffer visible in a window."
(display-buffer (tex-shell-buf) display-comint-buffer-action)
(display-buffer (tex-shell-buf) display-tex-shell-buffer-action)
(tex-recenter-output-buffer nil))
(defun tex-shell-sentinel (proc _msg)
@ -2426,7 +2426,7 @@ Only applies the FSPEC to the args part of FORMAT."
(if cmds (tex-format-cmd (caar cmds) fspec))))))
(defun tex-cmd-doc-view (file)
(pop-to-buffer (find-file-noselect file) display-comint-buffer-action))
(pop-to-buffer (find-file-noselect file) display-tex-shell-buffer-action))
(defun tex-compile (dir cmd)
"Run a command CMD on current TeX buffer's file in DIR."
@ -2681,7 +2681,7 @@ line LINE of the window, or centered if LINE is nil."
(window))
(if (null tex-shell)
(message "No TeX output buffer")
(setq window (display-buffer tex-shell display-comint-buffer-action))
(setq window (display-buffer tex-shell display-tex-shell-buffer-action))
(with-selected-window window
(bury-buffer tex-shell)
(goto-char (point-max))

View file

@ -8776,6 +8776,14 @@ another window."
:group 'windows
:group 'comint)
(defcustom display-tex-shell-buffer-action 'display-buffer-in-previous-window
"`display-buffer' action for displaying TeX shell buffers."
:type display-buffer--action-custom-type
:risky t
:version "29.1"
:group 'windows
:group 'tex-run)
(defun read-buffer-to-switch (prompt)
"Read the name of a buffer to switch to, prompting with PROMPT.
Return the name of the buffer as a string.