aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard M. Stallman1994-01-01 06:21:59 +0000
committerRichard M. Stallman1994-01-01 06:21:59 +0000
commit5625c2fc22b4fc88870291c1ecb2e4c58208a509 (patch)
treec60672a0fc3212bd9c65536ca307a5e3aab70514
parent18260534da81dfb78170cee4d41843e72053ad8b (diff)
downloademacs-5625c2fc22b4fc88870291c1ecb2e4c58208a509.tar.gz
emacs-5625c2fc22b4fc88870291c1ecb2e4c58208a509.zip
(save-some-buffers): Fix previous change.
-rw-r--r--lisp/files.el86
1 files changed, 44 insertions, 42 deletions
diff --git a/lisp/files.el b/lisp/files.el
index 4f521455477..3179f38041a 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -1527,48 +1527,50 @@ Optional second argument EXITING means ask about certain non-file buffers
1527 as well as about file buffers." 1527 as well as about file buffers."
1528 (interactive "P") 1528 (interactive "P")
1529 (save-window-excursion 1529 (save-window-excursion
1530 (or (not (zerop (map-y-or-n-p 1530 (let ((files-done
1531 (function 1531 (map-y-or-n-p
1532 (lambda (buffer) 1532 (function
1533 (and (buffer-modified-p buffer) 1533 (lambda (buffer)
1534 (or 1534 (and (buffer-modified-p buffer)
1535 (buffer-file-name buffer) 1535 (or
1536 (and exiting 1536 (buffer-file-name buffer)
1537 (progn 1537 (and exiting
1538 (set-buffer buffer) 1538 (progn
1539 (and buffer-offer-save (> (buffer-size) 0))))) 1539 (set-buffer buffer)
1540 (if arg 1540 (and buffer-offer-save (> (buffer-size) 0)))))
1541 t 1541 (if arg
1542 (if (buffer-file-name buffer) 1542 t
1543 (format "Save file %s? " 1543 (if (buffer-file-name buffer)
1544 (buffer-file-name buffer)) 1544 (format "Save file %s? "
1545 (format "Save buffer %s? " 1545 (buffer-file-name buffer))
1546 (buffer-name buffer))))))) 1546 (format "Save buffer %s? "
1547 (function 1547 (buffer-name buffer)))))))
1548 (lambda (buffer) 1548 (function
1549 (set-buffer buffer) 1549 (lambda (buffer)
1550 (save-buffer))) 1550 (set-buffer buffer)
1551 (buffer-list) 1551 (save-buffer)))
1552 '("buffer" "buffers" "save") 1552 (buffer-list)
1553 (list (list ?\C-r (lambda (buf) 1553 '("buffer" "buffers" "save")
1554 (view-buffer buf) 1554 (list (list ?\C-r (lambda (buf)
1555 (setq view-exit-action 1555 (view-buffer buf)
1556 '(lambda (ignore) 1556 (setq view-exit-action
1557 (exit-recursive-edit))) 1557 '(lambda (ignore)
1558 (recursive-edit) 1558 (exit-recursive-edit)))
1559 ;; Return nil to ask about BUF again. 1559 (recursive-edit)
1560 nil) 1560 ;; Return nil to ask about BUF again.
1561 "display the current buffer")) 1561 nil)
1562 ))) 1562 "display the current buffer"))))
1563 (and save-abbrevs abbrevs-changed 1563 (abbrevs-done
1564 (progn 1564 (and save-abbrevs abbrevs-changed
1565 (if (or arg 1565 (progn
1566 (y-or-n-p (format "Save abbrevs in %s? " abbrev-file-name))) 1566 (if (or arg
1567 (write-abbrev-file nil)) 1567 (y-or-n-p (format "Save abbrevs in %s? " abbrev-file-name)))
1568 ;; Don't keep bothering user if he says no. 1568 (write-abbrev-file nil))
1569 (setq abbrevs-changed nil) 1569 ;; Don't keep bothering user if he says no.
1570 t)) 1570 (setq abbrevs-changed nil)
1571 (message "(No files need saving)")))) 1571 t))))
1572 (or (> files-done 0) abbrevs-done
1573 (message "(No files need saving)")))))
1572 1574
1573(defun not-modified (&optional arg) 1575(defun not-modified (&optional arg)
1574 "Mark current buffer as unmodified, not needing to be saved. 1576 "Mark current buffer as unmodified, not needing to be saved.