Eshell fixes
This commit is contained in:
1 parent
8865197b2f
commit
f809a8ec7b
1 file changed
+8
-4
+8
-4
@@ -553,11 +553,15 @@ EMACS-ALTERNATIVE is the Emacs equivalent (e.g., 'C-s')."
|
|||||||
"eshell-popup\\*$"))
|
"eshell-popup\\*$"))
|
||||||
|
|
||||||
(defun my/popper-window-height (window)
|
(defun my/popper-window-height (window)
|
||||||
"Make eshell popups take half the frame height, otherwise defer to popper--fit-window-height"
|
"Resize eshell popups to half the frame height; fit other popups."
|
||||||
(let ((buffer (window-buffer window)))
|
(let ((buffer (window-buffer window)))
|
||||||
(if (with-current-buffer buffer
|
(if (with-current-buffer buffer
|
||||||
(derived-mode-p 'eshell-mode))
|
;; Eshell displays a new buffer before enabling `eshell-mode'.
|
||||||
(/ (frame-height (window-frame window)) 2)
|
(or (derived-mode-p 'eshell-mode)
|
||||||
|
(string-match-p "eshell-popup\\*$" (buffer-name))))
|
||||||
|
;; A functional `window-height' action must resize the window.
|
||||||
|
(let ((height (/ (frame-height (window-frame window)) 2)))
|
||||||
|
(fit-window-to-buffer window height height))
|
||||||
(popper--fit-window-height window))))
|
(popper--fit-window-height window))))
|
||||||
|
|
||||||
(setq popper-window-height #'my/popper-window-height)
|
(setq popper-window-height #'my/popper-window-height)
|
||||||
@@ -1005,7 +1009,7 @@ the new eshell window is selected."
|
|||||||
(beginning-of-line)
|
(beginning-of-line)
|
||||||
(= (point) orig))))
|
(= (point) orig))))
|
||||||
(progn
|
(progn
|
||||||
(kill-this-buffer)
|
(kill-current-buffer)
|
||||||
(when (not (one-window-p))
|
(when (not (one-window-p))
|
||||||
(delete-window)))
|
(delete-window)))
|
||||||
(delete-char 1)))
|
(delete-char 1)))
|
||||||
|
|||||||
Reference in new issue
Block a user