emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/cus-edit.el


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/cus-edit.el
Date: Sun, 01 Jun 2003 14:40:10 -0400

Index: emacs/lisp/cus-edit.el
diff -c emacs/lisp/cus-edit.el:1.182 emacs/lisp/cus-edit.el:1.183
*** emacs/lisp/cus-edit.el:1.182        Sat May 31 11:23:00 2003
--- emacs/lisp/cus-edit.el      Sun Jun  1 14:40:10 2003
***************
*** 1208,1219 ****
  
  (defun custom-get-fresh-buffer (name)
    "Get a fresh new buffer with name NAME.
! If the buffer already exist, clean it up to be like new."
    (let ((buf (get-buffer name)))
      (if (null buf)
        (get-buffer-create name)
        (with-current-buffer buf
        (kill-all-local-variables)
        (erase-buffer)
        (let ((ols (overlay-lists)))
          (dolist (ol (nconc (car ols) (cdr ols)))
--- 1208,1228 ----
  
  (defun custom-get-fresh-buffer (name)
    "Get a fresh new buffer with name NAME.
! If the buffer already exist, clean it up to be like new.
! Beware: it's not quite like new.  Good enough for custom, but maybe
! not for everybody."
!   ;; To be more complete, we should also kill all permanent-local variables,
!   ;; but it's not needed for custom.
    (let ((buf (get-buffer name)))
+     (when (buffer-local-value 'buffer-file-name buf)
+       ;; This will check if the file is not saved.
+       (kill-buffer buf)
+       (setq buf nil))
      (if (null buf)
        (get-buffer-create name)
        (with-current-buffer buf
        (kill-all-local-variables)
+       (run-hooks 'kill-buffer-hook)
        (erase-buffer)
        (let ((ols (overlay-lists)))
          (dolist (ol (nconc (car ols) (cdr ols)))




reply via email to

[Prev in Thread] Current Thread [Next in Thread]