summaryrefslogtreecommitdiff
path: root/lisp/window.el
diff options
context:
space:
mode:
Diffstat (limited to 'lisp/window.el')
-rw-r--r--lisp/window.el69
1 files changed, 4 insertions, 65 deletions
diff --git a/lisp/window.el b/lisp/window.el
index f16d8942824..ced7e20e663 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -1,5 +1,5 @@
;; GNU Emacs window commands aside from those written in C.
-;; Copyright (C) 1985, 1989 Free Software Foundation, Inc.
+;; Copyright (C) 1985 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
@@ -18,59 +18,12 @@
;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-(defun count-windows (&optional minibuf)
- "Returns the number of visible windows.
-Optional arg NO-MINI non-nil means don't count the minibuffer
-even if it is active."
- (let ((count 0))
- (walk-windows (function (lambda ()
- (setq count (+ count 1))))
- minibuf)
- count))
-
-(defun balance-windows ()
- "Makes all visible windows the same size (approximately)."
- (interactive)
- (let ((count 0))
- (walk-windows (function (lambda (w)
- (setq count (+ count 1))))
- 'nomini)
- (let ((size (/ (screen-height) count)))
- (walk-windows (function (lambda (w)
- (select-window w)
- (enlarge-window (- size (window-height)))))
- 'nomini))))
-
(defun split-window-vertically (&optional arg)
"Split current window into two windows, one above the other.
-The uppermost window gets ARG lines and the other gets the rest.
-With no argument, split equally or close to it.
-Both windows display the same buffer now current.
-The new selected window is the one that the current value of point
-appears in.
-
-The value of point can change if the text around point
-is hidden by the new mode line."
+This window becomes the uppermost of the two, and gets
+ARG lines. No arg means split equally."
(interactive "P")
- (let ((old-w (selected-window))
- (old-point (point))
- new-w bottom switch)
- (setq new-w (split-window nil (and arg (prefix-numeric-value arg))))
- (save-excursion
- (set-buffer (window-buffer))
- (goto-char (window-start))
- (vertical-motion (window-height))
- (set-window-start new-w (point))
- (if (> (point) (window-point new-w))
- (set-window-point new-w (point)))
- (vertical-motion -1)
- (setq bottom (point)))
- (if (<= bottom (point))
- (set-window-point old-w (1- bottom)))
- (if (< (window-start new-w) old-point)
- (progn
- (set-window-point new-w old-point)
- (select-window new-w)))))
+ (split-window nil (and arg (prefix-numeric-value arg))))
(defun split-window-horizontally (&optional arg)
"Split current window into two windows side by side.
@@ -89,21 +42,7 @@ ARG columns. No arg means split equally."
(interactive "p")
(shrink-window arg t))
-(defun window-config-to-register (name)
- "Save the current window configuration in register REG (a letter).
-It can be later retrieved using \\[M-x register-to-window-config]."
- (interactive "cSave window configuration in register: ")
- (set-register name (current-window-configuration)))
-
-(defun register-to-window-config (name)
- "Restore (make current) the window configuration in register REG (a letter).
-Use with a register previously set with \\[window-config-to-register]."
- (interactive "cRestore window configuration from register: ")
- (set-window-configuration (get-register name)))
-
(define-key ctl-x-map "2" 'split-window-vertically)
(define-key ctl-x-map "5" 'split-window-horizontally)
-(define-key ctl-x-map "6" 'window-config-to-register)
-(define-key ctl-x-map "7" 'register-to-window-config)
(define-key ctl-x-map "}" 'enlarge-window-horizontally)
(define-key ctl-x-map "{" 'shrink-window-horizontally)