changeset 24429:d4276a9b567e

(edit-options): Doc fix. (list-options): Don't lose with unbound symbols. Maintain Edit-options-mode.
author Dave Love <fx@gnu.org>
date Wed, 03 Mar 1999 17:42:47 +0000
parents 3d10131927a6
children fa964bcd6d26
files lisp/options.el
diffstat 1 files changed, 16 insertions(+), 16 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/options.el	Wed Mar 03 14:51:07 1999 +0000
+++ b/lisp/options.el	Wed Mar 03 17:42:47 1999 +0000
@@ -37,9 +37,6 @@
 (defun list-options ()
   "Display a list of Emacs user options, with values and documentation."
   (interactive)
-  (save-excursion
-    (set-buffer (get-buffer-create "*List Options*"))
-    (Edit-options-mode))
   (with-output-to-temp-buffer "*List Options*"
     (let (vars)
       (mapatoms (function (lambda (sym)
@@ -48,25 +45,28 @@
       (setq vars (sort vars 'string-lessp))
       (while vars
 	(let ((sym (car vars)))
-	  (princ ";; ")
-	  (prin1 sym)
-	  (princ ":\n\t")
-	  (prin1 (symbol-value sym))
-	  (terpri)
-	  (princ (substitute-command-keys 
-		  (documentation-property sym 'variable-documentation)))
-	  (princ "\n;;\n"))
-	(setq vars (cdr vars)))))
-  (save-excursion
-    (set-buffer "*List Options*")
-    (setq buffer-read-only t)))
+	  (when (boundp sym)
+	    (princ ";; ")
+	    (prin1 sym)
+	    (princ ":\n\t")
+	    (prin1 (symbol-value sym))
+	    (terpri)
+	    (princ (substitute-command-keys 
+		    (documentation-property sym 'variable-documentation)))
+	    (princ "\n;;\n"))
+	  (setq vars (cdr vars))))
+      (with-current-buffer "*List Options*"
+	(Edit-options-mode)
+	(setq buffer-read-only t)))))
 
 ;;;###autoload
 (defun edit-options ()
   "Edit a list of Emacs user option values.
 Selects a buffer containing such a list,
 in which there are commands to set the option values.
-Type \\[describe-mode] in that buffer for a list of commands."
+Type \\[describe-mode] in that buffer for a list of commands.
+
+The Custom feature is intended to make this obsolete."
   (interactive)
   (list-options)
   (pop-to-buffer "*List Options*"))