]> code.delx.au - gnu-emacs/blobdiff - lisp/electric.el
(compilation-set-window-height): New function,
[gnu-emacs] / lisp / electric.el
index 5272d7068451cbf580a5b864fd0b046f1837eb46..39d690f5ff9a9e78e893e0fd80b9941b1db976ef 100644 (file)
 
 ;;; Code:
 
-;; perhaps this should be in subr.el...
-(defun shrink-window-if-larger-than-buffer (window)
-  (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
@@ -87,7 +58,7 @@
            this-command (key-binding cmd)
            cmd this-command)
       (if (or (prog1 quit-flag (setq quit-flag nil))
-             (= last-input-char ?\C-g))
+             (eq last-input-char ?\C-g))
          (progn (setq unread-command-events nil
                       prefix-arg nil)
                 ;; If it wasn't cancelling a prefix character, then quit.
              (progn (command-execute cmd)
                     (setq last-command this-command)
                     (if (or (prog1 quit-flag (setq quit-flag nil))
-                            (= last-input-char ?\C-g))
+                            (eq last-input-char ?\C-g))
                         (progn (setq unread-command-events nil)
                                (if (not inhibit-quit)
                                    (progn (ding)