diff options
author | Eric S. Raymond <esr@snark.thyrsus.com> | 1993-04-16 19:23:21 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@snark.thyrsus.com> | 1993-04-16 19:23:21 +0000 |
commit | 17e2c564c75cbca90e9d396f418ca22da89c454d (patch) | |
tree | 5955858cb03898986692c43c08a465ce5868be69 /lisp/electric.el | |
parent | 8ae3bc9f18081524e493c8d4d23aa9e92137fb9e (diff) | |
download | emacs-17e2c564c75cbca90e9d396f418ca22da89c454d.tar.gz |
(shrink-window-if-larger-than-buffer): Moved to window.el.
Diffstat (limited to 'lisp/electric.el')
-rw-r--r-- | lisp/electric.el | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/lisp/electric.el b/lisp/electric.el index dbb19946d6b..d0aa6f81dfc 100644 --- a/lisp/electric.el +++ b/lisp/electric.el @@ -28,38 +28,6 @@ ;;; Code: -;; perhaps this should be in subr.el... -(defun shrink-window-if-larger-than-buffer (&optional window) - "Shrink the WINDOW to be as small as possible to display its contents. Do -nothing if only one window is displayed or if the buffer contains more lines -than the present window height." - (save-excursion - (set-buffer (window-buffer window)) - (let ((w (selected-window)) ;save-window-excursion can't win - (buffer-file-name buffer-file-name) - (p (point)) - (n 0) - (window-min-height 0) - (buffer-read-only nil) - (modified (buffer-modified-p)) - (buffer (current-buffer))) - (unwind-protect - (progn - (select-window window) - (goto-char (point-min)) - (while (pos-visible-in-window-p (point-max)) - ;; defeat file locking... don't try this at home, kids! - (setq buffer-file-name nil) - (insert ?\n) (setq n (1+ n))) - (if (> n 0) (shrink-window (1- n)))) - (delete-region (point-min) (point)) - (set-buffer-modified-p modified) - (goto-char p) - (select-window w) - ;; Make sure we unbind buffer-read-only - ;; with the proper current buffer. - (set-buffer buffer))))) - ;; This loop is the guts for non-standard modes which retain control ;; until some event occurs. It is a `do-forever', the only way out is to ;; throw. It assumes that you have set up the keymap, window, and |