From 5f7d6a0119cdbcd726e5a573b3e33a6649fd3bfa Mon Sep 17 00:00:00 2001 From: yamaoka Date: Wed, 25 Oct 2000 23:25:43 +0000 Subject: [PATCH] Synch with Gnus. --- lisp/ChangeLog | 16 +++ lisp/gnus-art.el | 8 +- lisp/gnus-demon.el | 2 +- lisp/gnus-sum.el | 3 +- lisp/mail-source.el | 281 ++++++++++++++++++++++++++++----------------------- 5 files changed, 179 insertions(+), 131 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 857aff2..ed26af4 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,19 @@ +2000-10-25 Dirk Meyer + + * gnus-demon.el (gnus-demon-time-to-step): theHour was set to + seconds instead of hour. + +2000-10-25 Per Abrahamsen + + * mail-source.el (mail-sources): Better `:type'. + +2000-10-24 18:31:29 ShengHuo ZHU + + * gnus-art.el (gnus-request-article-this-buffer): + gnus-refer-article-method might be a single method. + * gnus-sum.el (gnus-refer-article-methods): The second could be + a named method. + 2000-10-23 Simon Josefsson * flow-fill.el (fill-flowed): Don't flow "-- " lines. diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index 6dfc62b..730f06c 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -4323,10 +4323,10 @@ If given a prefix, show the hidden text instead." gnus-refer-article-method)) result (buffer-read-only nil)) - (setq methods - (if (listp methods) - methods - (list methods))) + (if (or (not (listp methods)) + (and (symbolp (car methods)) + (assq (car methods) nnoo-definition-alist))) + (setq methods (list methods))) (when (and (null gnus-override-method) methods) (setq gnus-override-method (pop methods))) diff --git a/lisp/gnus-demon.el b/lisp/gnus-demon.el index 40d6d06..6a77b8e 100644 --- a/lisp/gnus-demon.el +++ b/lisp/gnus-demon.el @@ -152,7 +152,7 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's." (nowParts (decode-time now)) ;; obtain THEN as discrete components (thenParts (parse-time-string time)) - (thenHour (elt thenParts 0)) + (thenHour (elt thenParts 2)) (thenMin (elt thenParts 1)) ;; convert time as elements into number of seconds since EPOCH. (then (encode-time 0 diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 7f7a3ee..5b58662 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -6918,7 +6918,8 @@ of what's specified by the `gnus-refer-thread-limit' variable." ((eq 'current gnus-refer-article-method) (list gnus-current-select-method)) ;; List of select methods. - ((not (stringp (cadr gnus-refer-article-method))) + ((not (and (symbolp (car gnus-refer-article-method)) + (assq (car gnus-refer-article-method) nnoo-definition-alist))) (let (out) (dolist (method gnus-refer-article-method) (push (if (eq 'current method) diff --git a/lisp/mail-source.el b/lisp/mail-source.el index 94f9527..64a9af8 100644 --- a/lisp/mail-source.el +++ b/lisp/mail-source.el @@ -42,137 +42,168 @@ This variable is a list of mail source specifiers. See Info node `(gnus)Mail Source Specifiers'." :group 'mail-source - ;; This specification should be tidied up, particularly to avoid - ;; constant items appearing. (Perhaps there's scope for improvment - ;; in the widget code.) :type `(repeat - (choice (const :tag "Default spool file" (file)) - (list :tag "Specified spool file" - (const file) - (const :value :path) - file) + (choice :format "%[Value Menu%] %v" + :value (file) + (cons :tag "Spool file" + (const :format "" file) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :path) + file))) (cons :tag "Several files in a directory" - (const directory) - (choice - :tag "Options" - (const :tag "None" nil) - (repeat - (choice - (list :inline t :tag "path" - (const :value :path) directory) - (list :inline t :tag "suffix" - (const :value :suffix) string) - (list :inline t :tag "predicate" - (const :value :predicate) function) - (list :inline t :tag "prescript" - (const :value :prescript) string) - (list :inline t :tag "postscript" - (const :value :postscript) string) - (list :inline t :tag "plugged" - (const :value :plugged) boolean))))) + (const :format "" directory) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :path) + (directory :tag "Path")) + (group :inline t + (const :format "" :value :suffix) + (string :tag "Suffix")) + (group :inline t + (const :format "" :value :predicate) + (function :tag "Predicate")) + (group :inline t + (const :format "" :value :prescript) + (string :tag "Prescript")) + (group :inline t + (const :format "" :value :postscript) + (string :tag "Postscript")) + (group :inline t + (const :format "" :value :plugged) + (boolean :tag "Plugged")))) (cons :tag "POP3 server" - (const pop) - (choice - :tag "Options" - (const :tag "None" nil) - (repeat - (choice - (list :inline t :tag "server" - (const :value :server) string) - (list :inline t :tag "port" - (const :value :port) (choice number string)) - (list :inline t :tag "user" - (const :value :user) string) - (list :inline t :tag "password" - (const :value :password) string) - (list :inline t :tag "program" - (const :value :program) string) - (list :inline t :tag "prescript" - (const :value :prescript) string) - (list :inline t :tag "postscript" - (const :value :postscript) string) - (list :inline t :tag "function" - (const :value :function) function) - (list :inline t :tag "authentication" - (const :value :authentication) - (choice (const password) - (const apop))) - (list :inline t :tag "plugged" - (const :value :plugged) boolean))))) + (const :format "" pop) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :server) + (string :tag "Server")) + (group :inline t + (const :format "" :value :port) + (choice :tag "Port" + :value "pop3" + (number :format "%v") + (string :format "%v"))) + (group :inline t + (const :format "" :value :user) + (string :tag "User")) + (group :inline t + (const :format "" :value :password) + (string :tag "Password")) + (group :inline t + (const :format "" :value :program) + (string :tag "Program")) + (group :inline t + (const :format "" :value :prescript) + (string :tag "Prescript")) + (group :inline t + (const :format "" :value :postscript) + (string :tag "Postscript")) + (group :inline t + (const :format "" :value :function) + (function :tag "Function")) + (group :inline t + (const :format "" + :value :authentication) + (choice :tag "Authentication" + :value apop + (const password) + (const apop))) + (group :inline t + (const :format "" :value :plugged) + (boolean :tag "Plugged")))) (cons :tag "Maildir (qmail, postfix...)" - (const maildir) - (choice - :tag "Options" - (const :tag "None" nil) - (repeat - (choice - (list :inline t :tag "path" - (const :value :path) directory) - (list :inline t :tag "plugged" - (const :value :plugged) boolean))))) + (const :format "" maildir) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :path) + (directory :tag "Path")) + (group :inline t + (const :format "" :value :plugged) + (boolean :tag "Plugged")))) (cons :tag "IMAP server" - (const imap) - (choice - :tag "Options" - (const :tag "None" nil) - (repeat - (choice - (list :inline t :tag "server" - (const :value :server) string) - (list :inline t :tag "port" - (const :value :port) - (choice number string)) - (list :inline t :tag "user" - (const :value :user) string) - (list :inline t :tag "password" - (const :value :password) string) - (list :inline t :tag "stream" - (const :value :stream) - (choice ,@(progn (require 'imap) - (mapcar - (lambda (a) - (list 'const (car a))) - imap-stream-alist)))) - (list :inline t :tag "authenticator" - (const :value :authenticator) - (choice ,@(progn (require 'imap) - (mapcar - (lambda (a) - (list 'const (car a))) - imap-authenticator-alist)))) - (list :inline t :tag "mailbox" - (const :value :mailbox) string) - (list :inline t :tag "predicate" - (const :value :predicate) function) - (list :inline t :tag "fetchflag" - (const :value :fetchflag) string) - (list :inline t :tag "dontexpunge" - (const :value :dontexpunge) boolean) - (list :inline t :tag "plugged" - (const :value :plugged) ))))) + (const :format "" imap) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :server) + (string :tag "Server")) + (group :inline t + (const :format "" :value :port) + (choice :tag "Port" + :value 143 + number string)) + (group :inline t + (const :format "" :value :user) + (string :tag "User")) + (group :inline t + (const :format "" :value :password) + (string :tag "Password")) + (group :inline t + (const :format "" :value :stream) + (choice :tag "Stream" + :value network + ,@(progn (require 'imap) + (mapcar + (lambda (a) + (list 'const + (car a))) + imap-stream-alist + )))) + (group :inline t + (const :format "" + :value :authenticator) + (choice :tag "Authenticator" + :value login + ,@(progn (require 'imap) + (mapcar + (lambda (a) + (list 'const + (car a))) + imap-authenticator-alist)))) + (group :inline t + (const :format "" :value :mailbox) + (string :tag "Mailbox")) + (group :inline t + (const :format "" :value :predicate) + (function :tag "Predicate")) + (group :inline t + (const :format "" :value :fetchflag) + (string :tag "Fetchflag")) + (group :inline t + (const :format "" + :value :dontexpunge) + (boolean :tag "Dontexpunge")) + (group :inline t + (const :format "" :value :plugged) + (boolean :tag "Plugged")))) (cons :tag "Webmail server" - (const webmail) - (choice - :tag "Options" - (const :tag "None" nil) - (repeat - (choice - (list :inline t :tag "subtype" - (const :value :subtype) - ;; Should be generated from - ;; `webmail-type-definition', but we - ;; can't require webmail without W3. - (choice (const hotmail) (const yahoo) - (const netaddress) (const netscape) - (const my-deja))) - (list :inline t :tag "user" - (const :value :user) string) - (list :inline t :tag "password" - (const :value :password) string) - (list :inline t :tag "dontexpunge" - (const :value :dontexpunge) boolean) - (list :inline t :tag "plugged" - (const :value :plugged) boolean)))))))) + (const :format "" webmail) + (checklist :tag "Options" :greedy t + (group :inline t + (const :format "" :value :subtype) + ;; Should be generated from + ;; `webmail-type-definition', but we + ;; can't require webmail without W3. + (choice :tag "Subtype" + :value hotmail + (const hotmail) + (const yahoo) + (const netaddress) + (const netscape) + (const my-deja))) + (group :inline t + (const :format "" :value :user) + (string :tag "User")) + (group :inline t + (const :format "" :value :password) + (string :tag "Password")) + (group :inline t + (const :format "" + :value :dontexpunge) + (boolean :tag "Dontexpunge")) + (group :inline t + (const :format "" :value :plugged) + (boolean :tag "Plugged"))))))) (defcustom mail-source-primary-source nil "*Primary source for incoming mail. -- 1.7.10.4