1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-12-29 11:02:01 +00:00

(custom-buffer-sort-alphabetically): Default to t.

(custom-save-all): Visit the file if necessary;
kill the buffer if we created it.
(custom-save-delete): Don't visit file or kill buffer here.
This commit is contained in:
Richard M. Stallman 2005-08-30 10:35:09 +00:00
parent d9df5bffac
commit f8d869d15a

View File

@ -670,7 +670,7 @@ If `last', order groups after non-groups."
:type 'boolean :type 'boolean
:group 'custom-browse) :group 'custom-browse)
(defcustom custom-buffer-sort-alphabetically nil (defcustom custom-buffer-sort-alphabetically t
"If non-nil, sort members of each customization group alphabetically." "If non-nil, sort members of each customization group alphabetically."
:type 'boolean :type 'boolean
:group 'custom-buffer) :group 'custom-buffer)
@ -3836,8 +3836,9 @@ Optional EVENT is the location for the menu."
(setq magics (cdr magics))))) (setq magics (cdr magics)))))
(widget-put widget :custom-state found))) (widget-put widget :custom-state found)))
(custom-magic-reset widget)) (custom-magic-reset widget))
;;; Reading and writing the custom file.
;;; The `custom-save-all' Function.
;;;###autoload ;;;###autoload
(defcustom custom-file nil (defcustom custom-file nil
"File used for storing customization information. "File used for storing customization information.
@ -3898,17 +3899,33 @@ if only the first line of the docstring is shown."))
(setq user-init-file default-init-file)) (setq user-init-file default-init-file))
user-init-file)))) user-init-file))))
;;;###autoload
(defun custom-save-all ()
"Save all customizations in `custom-file'."
(let* ((filename (custom-file))
(recentf-exclude (if recentf-mode
(cons (concat "\\`"
(regexp-quote (custom-file))
"\\'")
recentf-exclude)))
(old-buffer (find-buffer-visiting filename)))
(with-current-buffer (or old-buffer (find-file-noselect filename))
(let ((inhibit-read-only t))
(custom-save-variables)
(custom-save-faces))
(let ((file-precious-flag t))
(save-buffer))
(unless old-buffer
(kill-buffer (current-buffer))))))
;; Editing the custom file contents in a buffer.
(defun custom-save-delete (symbol) (defun custom-save-delete (symbol)
"Visit `custom-file' and delete all calls to SYMBOL from it. "Delete all calls to SYMBOL from the contents of the current buffer.
Leave point at the old location of the first such call, Leave point at the old location of the first such call,
or (if there were none) at the end of the buffer." or (if there were none) at the end of the buffer.
(let ((default-major-mode 'emacs-lisp-mode)
(recentf-exclude (if recentf-mode This function does not save the buffer."
(cons (concat "\\`"
(regexp-quote (custom-file))
"\\'")
recentf-exclude))))
(set-buffer (find-file-noselect (custom-file))))
(goto-char (point-min)) (goto-char (point-min))
;; Skip all whitespace and comments. ;; Skip all whitespace and comments.
(while (forward-comment 1)) (while (forward-comment 1))
@ -4128,24 +4145,7 @@ or (if there were none) at the end of the buffer."
(put symbol 'customized-face-comment nil))))) (put symbol 'customized-face-comment nil)))))
;; We really should update all custom buffers here. ;; We really should update all custom buffers here.
(custom-save-all)) (custom-save-all))
;;;###autoload
(defun custom-save-all ()
"Save all customizations in `custom-file'."
(let ((inhibit-read-only t))
(custom-save-variables)
(custom-save-faces)
(save-excursion
(let ((default-major-mode nil)
(recentf-exclude (if recentf-mode
(cons (concat "\\`"
(regexp-quote (custom-file))
"\\'")
recentf-exclude))))
(set-buffer (find-file-noselect (custom-file))))
(let ((file-precious-flag t))
(save-buffer)))))
;;; The Customize Menu. ;;; The Customize Menu.
;;; Menu support ;;; Menu support