aboutsummaryrefslogtreecommitdiffstats
path: root/lisp/cus-edit.el
diff options
context:
space:
mode:
authorPer Abrahamsen <[email protected]>2003-03-10 14:06:57 +0000
committerPer Abrahamsen <[email protected]>2003-03-10 14:06:57 +0000
commit963c2e09c084d528cd0432eb7c039c374816df3c (patch)
tree6aef687eceb4be231e243f17ecea7f8e15b1f324 /lisp/cus-edit.el
parent089bc712c0d71f238435f95b44b3ad391e9c92f9 (diff)
2003-03-10 Per Abrahamsen <[email protected]>
* cus-edit.el (customize-rogue): New command.
Diffstat (limited to 'lisp/cus-edit.el')
-rw-r--r--lisp/cus-edit.el21
1 files changed, 20 insertions, 1 deletions
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index c85b2a67ac..18059fcd85 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -1,6 +1,6 @@
;;; cus-edit.el --- tools for customizing Emacs and Lisp packages
;;
-;; Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
+;; Copyright (C) 1996, 1997, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
;;
;; Author: Per Abrahamsen <[email protected]>
;; Maintainer: FSF
@@ -1086,6 +1086,25 @@ suggest to customized that face, if it's customizable."
"*Customize Customized*"))))
;;;###autoload
+(defun customize-rogue ()
+ "Customize all user variable modified outside customize."
+ (interactive)
+ (let ((found nil))
+ (mapatoms (lambda (symbol)
+ (let ((cval (or (get symbol 'customized-value)
+ (get symbol 'saved-value)
+ (get symbol 'standard-value))))
+ (when (and cval ;Declared with defcustom.
+ (default-boundp symbol) ;Has a value.
+ (not (equal (eval (car cval))
+ ;; Which does not match customize.
+ (default-value symbol))))
+ (push (list symbol 'custom-variable) found)))))
+ (if (not found)
+ (error "No rogue user options")
+ (custom-buffer-create (custom-sort-items found t nil)
+ "*Customize Rogue*"))))
+;;;###autoload
(defun customize-saved ()
"Customize all already saved user options."
(interactive)