Synch to No Gnus 200405291219.
authoryamaoka <yamaoka>
Sat, 29 May 2004 14:00:45 +0000 (14:00 +0000)
committeryamaoka <yamaoka>
Sat, 29 May 2004 14:00:45 +0000 (14:00 +0000)
etc/gnus/gnus-setup.ast [new file with mode: 0644]
lisp/ChangeLog
lisp/assistant.el

diff --git a/etc/gnus/gnus-setup.ast b/etc/gnus/gnus-setup.ast
new file mode 100644 (file)
index 0000000..fbc430d
--- /dev/null
@@ -0,0 +1,26 @@
+@title Configuring Gnus for the first time
+
+
+@node What do you want to do with Gnus?
+
+@variable outbound (:radio ((item :tag "Send mail via sendmail" "sendmail") (item :tag "Send mail via SMTP" "smtp"))) "sendmail"
+
+@variable backends (:set ((item :tag "Read news via NNTP" "nntp") (item :tag"Sacrifice a goat" "goat") (item :tag "Read mail, store it locally" "nnml") (item :tag "Read mail and store it on an IMAP server" "nnimap"))) (list "nnml")
+
+@result primary-mail-selections (list backends outbound)
+
+@text
+Welcome to Gnus.  You need to tell us what you want to do with Gnus
+before we go on to specific configurations.
+
+Choose the tasks you want to set up: 
+@variable{backends}
+
+Choose the method Gnus will use to send mail: 
+@variable{outbound}
+
+@end text
+
+@ignore
+   arch-tag: 6b7b200b-9169-4b44-8b32-b73773fa71af
+@end ignore
index e981e16..edac8e2 100644 (file)
@@ -1,3 +1,9 @@
+2004-05-29  Teodor Zlatanov  <tzz@lifelogs.com>
+
+       * assistant.el (assistant-render-text, assistant-eval): add :set
+       widget type, which is different because it takes and returns a
+       list.  Much hilarity ensues.
+
 2004-05-28  Reiner Steib  <Reiner.Steib@gmx.de>
 
        * gnus-art.el (gnus-button-alist): Fixed regexp for manual links.
index d7031ab..bacbe17 100644 (file)
             (variable (cadr elem))
             (type (assistant-get-variable node variable 'type)))
        (cond
-        ((eq (car-safe type) :set)
+        ((eq (car-safe type) :radio)
          (push
           (apply
            #'widget-create
-           'checklist
+           'radio-button-choice
            :assistant-variable variable
            :assistant-node node
            :value (assistant-get-variable node variable)
                        "node")))
            (cadr type))
           assistant-widgets))
-        ((eq (car-safe type) :radio)
+        ((eq (car-safe type) :set)
          (push
           (apply
            #'widget-create
-           'radio-button-choice
+           'set
            :assistant-variable variable
            :assistant-node node
-           :value (assistant-get-variable node variable)
+           :value (assistant-get-variable node variable nil t)
            :notify (lambda (widget &rest ignore)
                      (assistant-set-variable
                       (widget-get widget :assistant-node)
   (let ((bindings nil))
     (dolist (variable (assistant-get-all-variables))
       (setq variable (cadr variable))
-      (push (list (car variable) (if (eq (nth 3 variable) 'default)
-                                    nil
-                                  (nth 3 variable)))
+      (push (list (car variable) 
+                 (if (eq (nth 3 variable) 'default)
+                     nil
+                   (if (listp (nth 3 variable))
+                       `(list ,@(nth 3 variable))
+                     (nth 3 variable))))
            bindings))
     (eval
      `(let ,bindings