summaryrefslogtreecommitdiff
path: root/lisp/windmove.el
diff options
context:
space:
mode:
authorJuri Linkov <juri@linkov.net>2018-12-21 01:41:25 +0200
committerJuri Linkov <juri@linkov.net>2018-12-21 01:41:25 +0200
commit157ada833f36b9919be44ad4ecbae6d94c808dec (patch)
treebb75cb834bea9b80124e7313dd6b85347f04f08b /lisp/windmove.el
parent3f36651c6470bab951f12f486eb4928235f1ba50 (diff)
downloademacs-157ada833f36b9919be44ad4ecbae6d94c808dec.tar.gz
* lisp/windmove.el (windmove-delete-in-direction): Change prefix arg C-u
to kill the buffer. Add prefix arg M-0 to delete the selected window. (Bug#32790)
Diffstat (limited to 'lisp/windmove.el')
-rw-r--r--lisp/windmove.el7
1 files changed, 5 insertions, 2 deletions
diff --git a/lisp/windmove.el b/lisp/windmove.el
index c16c12444a0..75b9e0cf599 100644
--- a/lisp/windmove.el
+++ b/lisp/windmove.el
@@ -684,7 +684,8 @@ Default value of MODIFIERS is `shift-meta'."
(defun windmove-delete-in-direction (dir &optional arg)
"Delete the window at direction DIR.
-If prefix ARG is `C-u', delete the selected window and
+If prefix ARG is `\\[universal-argument]', also kill the buffer in that window.
+With `M-0' prefix, delete the selected window and
select the window at direction DIR.
When `windmove-wrap-around' is non-nil, takes the window
from the opposite side of the frame."
@@ -693,7 +694,9 @@ from the opposite side of the frame."
(cond ((null other-window)
(user-error "No window %s from selected window" dir))
(t
- (if (not (consp arg))
+ (when (equal arg '(4))
+ (kill-buffer (window-buffer other-window)))
+ (if (not (equal arg 0))
(delete-window other-window)
(delete-window (selected-window))
(select-window other-window))))))