# HG changeset patch # User Per Abrahamsen # Date 1047305217 0 # Node ID 21135e13f9cdaa8fa4b85c853f98109e79263e84 # Parent a3f6f7daf7e3a59efac4cf910509fa75f761da11 2003-03-10 Per Abrahamsen * cus-edit.el (customize-rogue): New command. diff -r a3f6f7daf7e3 -r 21135e13f9cd lisp/ChangeLog --- a/lisp/ChangeLog Mon Mar 10 13:30:22 2003 +0000 +++ b/lisp/ChangeLog Mon Mar 10 14:06:57 2003 +0000 @@ -1,3 +1,7 @@ +2003-03-10 Per Abrahamsen + + * cus-edit.el (customize-rogue): New command. + 2003-03-10 Andreas Schwab * info.el (Info-extract-menu-node-name) diff -r a3f6f7daf7e3 -r 21135e13f9cd lisp/cus-edit.el --- a/lisp/cus-edit.el Mon Mar 10 13:30:22 2003 +0000 +++ b/lisp/cus-edit.el Mon Mar 10 14:06:57 2003 +0000 @@ -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 ;; Maintainer: FSF @@ -1086,6 +1086,25 @@ "*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)