Synch to No Gnus 200410120226.
authoryamaoka <yamaoka>
Tue, 12 Oct 2004 03:30:10 +0000 (03:30 +0000)
committeryamaoka <yamaoka>
Tue, 12 Oct 2004 03:30:10 +0000 (03:30 +0000)
lisp/ChangeLog
lisp/gnus-sum.el
lisp/gnus.el
lisp/mml.el
lisp/nnheader.el
lisp/pop3.el

index a599c77..216f045 100644 (file)
@@ -1,3 +1,26 @@
+2004-10-10  Reiner Steib  <Reiner.Steib@gmx.de>
+
+       * gnus-sum.el: Mention that multibyte characters don't work as marks.
+
+       * gnus.el (message-y-or-n-p): Autoload.
+
+       * pop3.el (pop3-maildrop, pop3-mailhost, pop3-port)
+       (pop3-password-required, pop3-authentication-scheme)
+       (pop3-leave-mail-on-server): Made customizable.
+       (pop3): New custom group.
+       (pop3-retr): Remove `sleep-for' statements.
+       Suggested by Dave Love <fx@gnu.org>.
+
+       * nnheader.el (nnheader-read-timeout): Explain 1.0 timeout for
+       Windows/DOS.
+
+       * imap.el (imap-parse-flag-list, imap-parse-body-extension)
+       (imap-parse-body): Fix incorrect use of `assert'.  Suggested by
+       Dave Love <fx@gnu.org>.
+
+       * mml.el (mml-minibuffer-read-disposition): Require match.
+       Suggested by Dave Love <fx@gnu.org>.
+
 2004-10-11  Reiner Steib  <Reiner.Steib@gmx.de>
 
        * gnus-group.el (gnus-group-delete-group): Change "\t." to "  " in
index f6669fe..448faee 100644 (file)
@@ -460,6 +460,9 @@ string with the suggested prefix."
   :group 'gnus-summary-mail
   :type 'function)
 
+;; FIXME: Although the custom type is `character' for the following variables,
+;; using multibyte characters (Latin-1, UTF-8) doesn't work.  -- rs
+
 (defcustom gnus-unread-mark ?\ ;;;Whitespace
   "*Mark used for unread articles."
   :group 'gnus-summary-marks
index bcc8902..027229f 100644 (file)
@@ -37,6 +37,7 @@
 
 (require 'wid-edit)
 (require 'nnheader)
+(autoload 'message-y-or-n-p "message" nil nil 'macro)
 
 (require 'gnus-vers)
 
index 603675b..c01a922 100644 (file)
@@ -949,11 +949,9 @@ See Info node `(emacs-mime)Composing'.
                      (if (string-match "^text/.*" type)
                          "inline"
                        "attachment")))
-        (disposition (completing-read
-                      (format "Disposition: (default %s): " default)
-                      '(("attachment") ("inline") (""))
-                      nil
-                      nil)))
+        (disposition (completing-read "Disposition: "
+                                      '(("attachment") ("inline") (""))
+                                      nil t)))
     (if (not (equal disposition ""))
        disposition
       default)))
index 141fce0..94f4ca8 100644 (file)
@@ -83,7 +83,15 @@ Integer values will in effect be rounded up to the nearest multiple of
 (defvar nnheader-read-timeout
   (if (string-match "windows-nt\\|os/2\\|emx\\|cygwin"
                    (symbol-name system-type))
-      1.0                              ; why?
+      ;; http://thread.gmane.org/v9655t3pjo.fsf@marauder.physik.uni-ulm.de
+      ;;
+      ;; IIRC, values lower than 1.0 didn't/don't work on Windows/DOS.
+      ;;
+      ;; There should probably be a runtime test to determine the timing
+      ;; resolution, or a primitive to report it.  I don't know off-hand
+      ;; what's possible.  Perhaps better, maybe the Windows/DOS primitive
+      ;; could round up non-zero timeouts to a minimum of 1.0?
+      1.0
     0.1)
   "How long nntp should wait between checking for the end of output.
 Shorter values mean quicker response, but are more CPU intensive.")
index ec3c27b..d4a6ae1 100644 (file)
 (require 'mail-utils)
 (require 'nnheader)
 
-(defvar pop3-maildrop (or (user-login-name) (getenv "LOGNAME") (getenv "USER") nil)
-  "*POP3 maildrop.")
-(defvar pop3-mailhost (or (getenv "MAILHOST") nil)
-  "*POP3 mailhost.")
-(defvar pop3-port 110
-  "*POP3 port.")
-(defvar pop3-connection-type nil
-  "*POP3 connection type.")
-
-(defvar pop3-password-required t
-  "*Non-nil if a password is required when connecting to POP server.")
+(defgroup pop3 nil
+  "Post Office Protocol"
+  :group 'mail
+  :group 'mail-source)
+
+(defcustom pop3-maildrop (or (user-login-name)
+                            (getenv "LOGNAME")
+                            (getenv "USER"))
+  "*POP3 maildrop."
+  :version "21.4" ;; Oort Gnus
+  :type 'string
+  :group 'pop3)
+
+(defcustom pop3-mailhost (or (getenv "MAILHOST") ;; nil -> mismatch
+                            "pop3")
+  "*POP3 mailhost."
+  :version "21.4" ;; Oort Gnus
+  :type 'string
+  :group 'pop3)
+
+(defcustom pop3-port 110
+  "*POP3 port."
+  :version "21.4" ;; Oort Gnus
+  :type 'number
+  :group 'pop3)
+
+(defcustom pop3-connection-type nil
+  "*POP3 connection type."
+  :type 'boolean
+  :group 'pop3)
+
+(defcustom pop3-password-required t
+  "*Non-nil if a password is required when connecting to POP server."
+  :version "21.4" ;; Oort Gnus
+  :type 'boolean
+  :group 'pop3)
+
+;; Should this be customizable?
 (defvar pop3-password nil
   "*Password to use when connecting to POP server.")
 
-(defvar pop3-authentication-scheme 'pass
+(defcustom pop3-authentication-scheme 'pass
   "*POP3 authentication scheme.
 Defaults to 'pass, for the standard USER/PASS authentication.  Other valid
-values are 'apop.")
+values are 'apop."
+  :version "21.4" ;; Oort Gnus
+  :type '(choice (const :tag "USER/PASS" pass)
+                (const :tag "APOP" apop))
+  :group 'pop3)
+
+(defcustom pop3-leave-mail-on-server nil
+  "*Non-nil if the mail is to be left on the POP server after fetching."
+  :version "21.4" ;; Oort Gnus
+  :type 'boolean
+  :group 'pop3)
 
 (defvar pop3-timestamp nil
   "Timestamp returned when initially connected to the POP server.
 Used for APOP authentication.")
 
-(defvar pop3-leave-mail-on-server nil
-  "Non-nil if mail is to be left on the server and UIDL used for message retrieval.")
+(defcustom pop3-maximum-message-size nil
+  "If non-nil only download messages smaller than this."
+  :type '(choice (const :tag "Unlimited" nil)
+                (integer :tag "Maximum size" :format "%t: %v\n" :size 0))
+  :group 'pop3)
 
-(defvar pop3-maximum-message-size nil
-  "If non-nil only download messages smaller than this.")
+(defcustom pop3-except-header-regexp nil
+  "If non-nil we do not retrieve messages whose headers are matching this regexp."
+  :type '(choice (const :tag "Retrieve any messages" nil)
+                (regexp :format "%t: %v\n" :size 0))
+  :group 'pop3)
 
-(defvar pop3-except-header-regexp nil
-  "If non-nil we do not retrieve messages whose headers are matching this regexp.")
+(defcustom pop3-uidl-file-name "~/.uidls"
+  "File in which to store the UIDL of processed messages."
+  :type '(file :format "%t: %v\n" :size 0)
+  :group 'pop3)
 
-(defvar pop3-uidl-file-name "~/.uidls"
-  "File in which to store the UIDL of processed messages.")
-
-(defvar pop3-uidl-support nil
+(defcustom pop3-uidl-support nil
   "Alist of servers and flags of whether they support UIDLs.
-Users don't have to set this value.")
+Users don't have to set this value."
+  :type 'boolean
+  :group 'pop3)
 
 (defvar pop3-uidl-obarray (make-vector 31 0)
   "Uidl hash table.")
@@ -128,15 +172,19 @@ Users don't have to set this value.")
   (autoload 'starttls-open-stream "starttls")
   (autoload 'starttls-negotiate "starttls"))
 
-(defvar pop3-ssl-program-name
+(defcustom pop3-ssl-program-name
   (if (executable-find "openssl")
       "openssl"
     "ssleay")
-  "The program to run in a subprocess to open an SSL connection.")
+  "The program to run in a subprocess to open an SSL connection."
+  :type '(string :format "%t: %v\n" :size 0)
+  :group 'pop3)
 
-(defvar pop3-ssl-program-arguments
+(defcustom pop3-ssl-program-arguments
   '("s_client" "-quiet")
-  "Arguments to be passed to the program `pop3-ssl-program-name'.")
+  "Arguments to be passed to the program `pop3-ssl-program-name'."
+  :type '(repeat (string :format "%v\n" :size 0))
+  :group 'pop3)
 
 (defun pop3-progress-message (format percent &rest args)
   (apply (function message) format args))
@@ -195,8 +243,7 @@ Users don't have to set this value.")
            (dolist (n retrieved-messages)
              (message "Deleting message %d of %d from %s..."
                       n message-count pop3-mailhost)
-             (pop3-dele process n)))
-         )
+             (pop3-dele process n))))
       (pop3-quit process))
     (kill-buffer crashbuf)
     message-count))
@@ -205,8 +252,7 @@ Users don't have to set this value.")
   "Return the number of messages in the maildrop."
   (let* ((process (pop3-open-server pop3-mailhost pop3-port))
         message-count
-        (pop3-password pop3-password)
-        )
+        (pop3-password pop3-password))
     ;; for debugging only
     (if pop3-debug (switch-to-buffer (process-buffer process)))
     ;; query for password
@@ -308,13 +354,12 @@ Args are NAME BUFFER HOST SERVICE."
 (defun pop3-send-command (process command)
   (set-buffer (process-buffer process))
   (goto-char (point-max))
-;;  (if (= (aref command 0) ?P)
-;;      (insert "PASS <omitted>\r\n")
-;;    (insert command "\r\n"))
+  ;; (if (= (aref command 0) ?P)
+  ;;     (insert "PASS <omitted>\r\n")
+  ;;   (insert command "\r\n"))
   (setq pop3-read-point (point))
   (goto-char (point-max))
-  (process-send-string process (concat command "\r\n"))
-  )
+  (process-send-string process (concat command "\r\n")))
 
 (defun pop3-read-response (process &optional return)
   "Read the response from the server PROCESS.
@@ -337,8 +382,7 @@ Return the response string if optional second argument RETURN is non-nil."
          (setq pop3-read-point match-end)
          (if return
              (buffer-substring (point) match-end)
-           t)
-         )))))
+           t))))))
 
 (defun pop3-clean-region (start end)
   (setq end (set-marker (make-marker) end))
@@ -386,8 +430,7 @@ If NOW, use that time instead."
       (goto-char (point-min))
       (if (not (or (looking-at "From .?") ; Unix mail
                   (looking-at "\001\001\001\001\n") ; MMDF
-                  (looking-at "BABYL OPTIONS:") ; Babyl
-                  ))
+                  (looking-at "BABYL OPTIONS:"))) ; Babyl
          (let* ((from (mail-strip-quoted-names (mail-fetch-field "From")))
                 (tdate (mail-fetch-field "Date"))
                 (date (split-string (or (and tdate
@@ -413,8 +456,7 @@ If NOW, use that time instead."
                         ;; like writing a date to day converter.
                         (format "Sun %s %s %s %s"
                                 (nth 1 date) (nth 0 date)
-                                (nth 3 date) (nth 2 date)))
-                       ))
+                                (nth 3 date) (nth 2 date)))))
            (setq From_ (format "\nFrom %s  %s\n" from date))
            (while (string-match "," From_)
              (setq From_ (concat (substring From_ 0 (match-beginning 0))
@@ -430,8 +472,7 @@ If NOW, use that time instead."
              (goto-char (point-min))
              (widen)
              (forward-line -1)
-             (insert (format "Content-Length: %s\n" size)))
-           )))))
+             (insert (format "Content-Length: %s\n" size))))))))
 
 ;; UIDL support
 
@@ -552,8 +593,7 @@ If NOW, use that time instead."
          (pop3-send-command process (format "APOP %s %s" user hash))
          (let ((response (pop3-read-response process t)))
            (if (not (and response (string-match "+OK" response)))
-               (pop3-quit process)))))
-    ))
+               (pop3-quit process)))))))
 
 (defun pop3-stls (process)
   "Query whether TLS extension is supported"
@@ -569,8 +609,7 @@ If NOW, use that time instead."
   (pop3-send-command process "STAT")
   (let ((response (pop3-read-response process t)))
     (list (string-to-int (nth 1 (split-string response " ")))
-         (string-to-int (nth 2 (split-string response " "))))
-    ))
+         (string-to-int (nth 2 (split-string response " "))))))
 
 (defun pop3-retr (process msg crashbuf)
   "Retrieve message-id MSG to buffer CRASHBUF."
@@ -580,8 +619,7 @@ If NOW, use that time instead."
     (let ((region (pop3-get-extended-response process)))
       (pop3-munge-message-separator (car region) (cadr region))
       (append-to-buffer crashbuf (car region) (cadr region))
-      (delete-region (car region) (cadr region))
-      )))
+      (delete-region (car region) (cadr region)))))
 
 (defun pop3-dele (process msg)
   "Mark message-id MSG as deleted."
@@ -597,8 +635,7 @@ If NOW, use that time instead."
   "Return highest accessed message-id number for the session."
   (pop3-send-command process "LAST")
   (let ((response (pop3-read-response process t)))
-    (string-to-int (nth 1 (split-string response " ")))
-    ))
+    (string-to-int (nth 1 (split-string response " ")))))
 
 (defun pop3-rset (process)
   "Remove all delete marks from current maildrop."
@@ -647,8 +684,7 @@ where
                  uidl (match-string 2))
            (push (cons msgno uidl) pairs)
            (beginning-of-line 2))
-         (cons (length pairs) (nreverse pairs))
-         )))))
+         (cons (length pairs) (nreverse pairs)))))))
 
 (defun pop3-list (process &optional msgno)
   "Return the results of a LIST command for PROCESS and optional MSGNO.
@@ -677,8 +713,7 @@ where
                  len (string-to-int (match-string 2)))
            (push (cons msgno len) pairs)
            (beginning-of-line 2))
-         (cons (length pairs) (nreverse pairs))
-         )))))
+         (cons (length pairs) (nreverse pairs)))))))
 
 (defun pop3-top (process msgno &optional lines)
   "Return the top LINES of messages for PROCESS and MSGNO.
@@ -687,8 +722,7 @@ If msgno is invalid, return nil.  Otherwise, return a string."
   (if (pop3-read-response process t)
       nil ;; MSGNO is not valid number
     (save-excursion
-      (apply 'buffer-substring (pop3-get-extended-response process)))
-    ))
+      (apply 'buffer-substring (pop3-get-extended-response process)))))
 
 ;;; Utility code