diff options
author | Richard M. Stallman <[email protected]> | 1993-12-31 12:50:12 +0000 |
---|---|---|
committer | Richard M. Stallman <[email protected]> | 1993-12-31 12:50:12 +0000 |
commit | 93c2b1e79434fbe5ae93e0abf786d05c0b01e136 (patch) | |
tree | 8aba42de987a2bcbc83bb31f934b368b8cd61daa | |
parent | 1c222bca8f967d7eff7aa5f5cf4e415b5bb671ac (diff) |
(save-some-buffers): Reinsert lost code to save abbrevs.
-rw-r--r-- | lisp/files.el | 74 |
1 files changed, 41 insertions, 33 deletions
diff --git a/lisp/files.el b/lisp/files.el index 289841685d..4f52145547 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1527,39 +1527,47 @@ Optional second argument EXITING means ask about certain non-file buffers as well as about file buffers." (interactive "P") (save-window-excursion - (if (zerop (map-y-or-n-p - (function - (lambda (buffer) - (and (buffer-modified-p buffer) - (or - (buffer-file-name buffer) - (and exiting - (progn - (set-buffer buffer) - (and buffer-offer-save (> (buffer-size) 0))))) - (if arg - t - (if (buffer-file-name buffer) - (format "Save file %s? " - (buffer-file-name buffer)) - (format "Save buffer %s? " - (buffer-name buffer))))))) - (function - (lambda (buffer) - (set-buffer buffer) - (save-buffer))) - (buffer-list) - '("buffer" "buffers" "save") - (list (list ?\C-r (lambda (buf) - (view-buffer buf) - (setq view-exit-action - '(lambda (ignore) - (exit-recursive-edit))) - (recursive-edit) - ;; Return nil to ask about BUF again. - nil) - "display the current buffer")) - )) + (or (not (zerop (map-y-or-n-p + (function + (lambda (buffer) + (and (buffer-modified-p buffer) + (or + (buffer-file-name buffer) + (and exiting + (progn + (set-buffer buffer) + (and buffer-offer-save (> (buffer-size) 0))))) + (if arg + t + (if (buffer-file-name buffer) + (format "Save file %s? " + (buffer-file-name buffer)) + (format "Save buffer %s? " + (buffer-name buffer))))))) + (function + (lambda (buffer) + (set-buffer buffer) + (save-buffer))) + (buffer-list) + '("buffer" "buffers" "save") + (list (list ?\C-r (lambda (buf) + (view-buffer buf) + (setq view-exit-action + '(lambda (ignore) + (exit-recursive-edit))) + (recursive-edit) + ;; Return nil to ask about BUF again. + nil) + "display the current buffer")) + ))) + (and save-abbrevs abbrevs-changed + (progn + (if (or arg + (y-or-n-p (format "Save abbrevs in %s? " abbrev-file-name))) + (write-abbrev-file nil)) + ;; Don't keep bothering user if he says no. + (setq abbrevs-changed nil) + t)) (message "(No files need saving)")))) (defun not-modified (&optional arg) |