mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2024-12-28 10:56:36 +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:
parent
d9df5bffac
commit
f8d869d15a
@ -670,7 +670,7 @@ If `last', order groups after non-groups."
|
||||
:type 'boolean
|
||||
: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."
|
||||
:type 'boolean
|
||||
:group 'custom-buffer)
|
||||
@ -3836,8 +3836,9 @@ Optional EVENT is the location for the menu."
|
||||
(setq magics (cdr magics)))))
|
||||
(widget-put widget :custom-state found)))
|
||||
(custom-magic-reset widget))
|
||||
|
||||
;;; Reading and writing the custom file.
|
||||
|
||||
;;; The `custom-save-all' Function.
|
||||
;;;###autoload
|
||||
(defcustom custom-file nil
|
||||
"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))
|
||||
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)
|
||||
"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,
|
||||
or (if there were none) at the end of the buffer."
|
||||
(let ((default-major-mode 'emacs-lisp-mode)
|
||||
(recentf-exclude (if recentf-mode
|
||||
(cons (concat "\\`"
|
||||
(regexp-quote (custom-file))
|
||||
"\\'")
|
||||
recentf-exclude))))
|
||||
(set-buffer (find-file-noselect (custom-file))))
|
||||
or (if there were none) at the end of the buffer.
|
||||
|
||||
This function does not save the buffer."
|
||||
(goto-char (point-min))
|
||||
;; Skip all whitespace and comments.
|
||||
(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)))))
|
||||
;; We really should update all custom buffers here.
|
||||
(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.
|
||||
|
||||
;;; Menu support
|
||||
|
Loading…
Reference in New Issue
Block a user