lisp/pop3-fma.el: Fix typo. ichikawa ichikawa-199811302358 ichikawa-last-snapshot-
authorichikawa <ichikawa>
Sun, 6 Sep 1998 02:42:03 +0000 (02:42 +0000)
committerichikawa <ichikawa>
Sun, 6 Sep 1998 02:42:03 +0000 (02:42 +0000)
ChangeLog
lisp/gnus-agent.el
lisp/pop3-fma.el

index c5976e8..e6db7cf 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+1998-09-06  Tatsuya Ichikawa <t-ichi@po.shiojiri.ne.jp>
+
+       * lisp/pop3-fma.el (pop3-fma-movemail): Add error handle.
+       (pop3-fma-get-movemail-type): Fix typo.
+
 1998-08-30  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus-agent.el (gnus-agent-fetch-headers): Bug Fix.
        * lisp/gnus-i18n.el (gnus-set-summary-default-charset): Match
        "real" newsgroup name; strip "backend+server" prefix.
 
-       * lisp/message.el (message-make-in-reply-to):
-       Use `std11-extract-address-components'.
-       (message-use-mail-reply-to): Doc fix.
-
 1998-08-28  Katsumi Yamaoka   <yamaoka@jpl.org>
 
        * lisp/message.el (message-make-user-agent): New function.
        (message-make-forward-subject): Failed to sync.
        (message-setup): Ditto.
        (message-clone-locals): Modify regexp.
-       
+
        * lisp/message.el (message-fill-references): Reverted.
 
 1998-08-23  Shuhei KOBAYASHI  <shuhei-k@jaist.ac.jp>
        *lisp/gnus-offline.el (gnus-offline-setup) : To create spol directory
        if not exists.
        Change default value of gnus-offline-drafts-queue-type 'miee to 'agent
-       
+
 1998-08-16  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.12.
 
        * Sync up with Gnus 5.6.36.
-       
+
        * lisp/gnus-offline.el : New file.
        Merge gnus-offline to ichikawa branch.
-       
+
 1998-08-15  Yoshiki Hayashi   <g740685@komaba.ecc.u-tokyo.ac.jp>
 
        * texi/gnus-ja.texi: Update.
        * lisp/gnus.el (gnus-version-number): Update to 6.8.11.
 
        * Sync up with Gnus 5.6.34.
-       
+
 1998-08-12  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.10.
 
        * Sync up with Gnus 5.6.33.
-       
+
 1998-08-11  Keiichi Suzuki  <kei-suzu@mail.wbs.ne.jp>
 
        * lisp/message.el (message-frames): New custom group.
        (message-kill-buffer): Ditto.
        (message-delete-frame): New function.
        (message-pop-to-buffer): Make new frame when edit message.
-       
+
 1998-08-11  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.9.
 
        * Sync up with Gnus 5.6.31.
-       
+
 1998-08-10  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.8.
 
        * Sync up with Gnus 5.6.30.
-       
+
 1998-08-10  Shuhei KOBAYASHI <shuhei-k@jaist.ac.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.7.
 1998-08-06  Katsumi Yamaoka <yamaoka@jpl.org>
 
        *lisp/smtp.el: Do not insert empty line at the end of message.
-       
+
 1998-08-06  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.8.6.
 
        * Sync up with Gnus 5.6.29.
-       
+
 1998-08-05  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/gnus-start.el (gnus-read-init-file): Fix indent.
        * Sync up with Gnus 5.6.22
        * lisp/gnus.el (gnus-version-number): Update to 6.7.8.
        * lisp/pop3-fma.el : Enable to get localhost mail spool.
-       
+
 1998-06-29  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.7.7.
        Gnus 5.6.13.
 
 1998-06-14  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
-       
+
        * Sync up with Gnus 5.6.13.
-       
+
 1998-06-24  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
 
        * lisp/gnus-art.el (gnus-article-display-mime-message): Don't
 1998-06-17  Tatsuya Ichikawa  <t-ichi@po.shiojiri.ne.jp>
 
        * lisp/pop3-fma.el: Small bug fix.
-       
+
        * lisp/pop3-fma.el: Delete variable pop3-fma-cypher-key
        Use base64-encode-string , base64-decode-string instead. 
        Both change by Yasuo OKABE <okabe@kuis.kyoto-u.ac.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.3.4.
        And fix typo 5.6.10 -> 5.6.11.
-       
+
 1998-06-03  Shuhei KOBAYASHI  <shuhei-k@jaist.ac.jp>
 
        * lisp/gnus.el (gnus-version-number): Update to 6.3.3.
        `nnheader-insert-file-contents'.
        (gnus-agent-braid-nov): Ditto.
        (gnus-agent-expire): Ditto.
-       
+
        * lisp/gnus-cache.el (gnus-cache-request-article): Ditto.
        (gnus-cache-retrieve-headers): Ditto.
        (gnus-cache-change-buffer): Ditto.
        (gnus-cache-braid-nov): Ditto.
-       
+
        * lisp/gnus-sum.el (gnus-summary-import-article): Ditto.
-       
+
        * lisp/nnkiboze.el (nnkiboze-retrieve-headers): Ditto.
 
        * lisp/message.el (message-generate-headers): Fix regexp.
        * lisp/gnus.el (gnus-bdf-image-file): New variable.
        (gnus-mule-group-startup-message): Display bitmap image using
        bitmap.el running with Emacs 20.
-       
+
        * lisp/gnus-agent.el (gnus-agent-fetch-headers): Fix problem when
        Xref field is not exist.
 
index c170e7e..57bfbf6 100644 (file)
@@ -203,8 +203,7 @@ If nil, only read articles will be expired."
       (push (cons mode (symbol-value (intern (format "gnus-agent-%s-mode-map"
                                                     buffer))))
            minor-mode-map-alist))
-    (when (eq major-mode 'gnus-group-mode)
-      (gnus-agent-toggle-plugged gnus-plugged))
+    (gnus-agent-toggle-plugged gnus-plugged)
     (gnus-run-hooks 'gnus-agent-mode-hook
                    (intern (format "gnus-agent-%s-mode-hook" buffer)))))
 
@@ -656,14 +655,15 @@ the actual number of articles toggled is returned."
                  (gnus-agent-group-path group) "/"))
            (date (gnus-time-to-day (current-time)))
            (case-fold-search t)
-           pos crosses id elem)
+           pos alists crosses id elem)
        (gnus-make-directory dir)
        (gnus-message 7 "Fetching articles for %s..." group)
        ;; Fetch the articles from the backend.
        (if (gnus-check-backend-function 'retrieve-articles group)
            (setq pos (gnus-retrieve-articles articles group))
          (nnheader-temp-write nil
-           (let (article)
+           (let ((buf (current-buffer))
+                 article)
              (while (setq article (pop articles))
                (when (gnus-request-article article group)
                  (goto-char (point-max))
@@ -750,7 +750,7 @@ the actual number of articles toggled is returned."
        (insert "\n"))
       (pop gnus-agent-group-alist))))
 
-(defun gnus-agent-fetch-headers (group &optional force)
+(defun gnus-agent-fetch-headers (group articles &optional force)
   (gnus-agent-load-alist group)
   ;; Find out what headers we need to retrieve.
   (when articles
@@ -769,6 +769,17 @@ the actual number of articles toggled is returned."
        (set-buffer nntp-server-buffer)
        (unless (eq 'nov (gnus-retrieve-headers articles group))
          (nnvirtual-convert-headers))
+       ;;
+       ;; To gnus-agent-expire work fine with no Xref field in .overview 
+       ;; Tatsuya Ichikawa <ichikawa@hv.epson.co.jp>
+       (goto-char (point-min))
+       (while (not (eobp))
+         (goto-char (point-at-eol))
+         (insert "\t")
+         (forward-line 1))
+       ;; Tatsuya Ichikawa <ichikawa@hv.epson.co.jp>
+       ;; To gnus-agent-expire work fine with no Xref field in .overview 
+       ;;
        ;; Save these headers for later processing.
        (copy-to-buffer gnus-agent-overview-buffer (point-min) (point-max))
        (let (file)
@@ -784,55 +795,53 @@ the actual number of articles toggled is returned."
                                    (gnus-time-to-day (current-time)))
        t)))))
 
-
 (defsubst gnus-agent-copy-nov-line (article)
   (let (b e)
     (set-buffer gnus-agent-overview-buffer)
     (setq b (point))
     (if (eq article (read (current-buffer)))
        (setq e (progn (forward-line 1) (point)))
-      (progn
-       (beginning-of-line)
-       (setq e b)))
+      (setq e b))
     (set-buffer nntp-server-buffer)
     (insert-buffer-substring gnus-agent-overview-buffer b e)))
 
 (defun gnus-agent-braid-nov (group articles file)
-  (set-buffer gnus-agent-overview-buffer)
-  (goto-char (point-min))
-  (set-buffer nntp-server-buffer)
-  (erase-buffer)
-  (nnheader-insert-file-contents file)
-  (goto-char (point-max))
-  (if (or (= (point-min) (point-max))
-         (progn
-           (forward-line -1)
-           (< (read (current-buffer)) (car articles))))
-      ;; We have only headers that are after the older headers,
-      ;; so we just append them.
-      (progn
-       (goto-char (point-max))
-       (insert-buffer-substring gnus-agent-overview-buffer))
-    ;; We do it the hard way.
-    (nnheader-find-nov-line (car articles))
-    (gnus-agent-copy-nov-line (car articles))
-    (pop articles)
-    (while (and articles
-               (not (eobp)))
-      (while (and (not (eobp))
-                 (< (read (current-buffer)) (car articles)))
-       (forward-line 1))
-      (beginning-of-line)
-      (unless (eobp)
-       (gnus-agent-copy-nov-line (car articles))
-       (setq articles (cdr articles))))
-    (when articles
-      (let (b e)
-       (set-buffer gnus-agent-overview-buffer)
-       (setq b (point)
-             e (point-max))
-       (set-buffer nntp-server-buffer)
-       (insert-buffer-substring gnus-agent-overview-buffer b e)))))
+  (let (beg end)
+    (set-buffer gnus-agent-overview-buffer)
+    (goto-char (point-min))
+    (set-buffer nntp-server-buffer)
+    (erase-buffer)
+    (nnheader-insert-file-contents file)
+    (goto-char (point-max))
+    (if (or (= (point-min) (point-max))
+           (progn
+             (forward-line -1)
+             (< (read (current-buffer)) (car articles))))
+       ;; We have only headers that are after the older headers,
+       ;; so we just append them.
+       (progn
+         (goto-char (point-max))
+         (insert-buffer-substring gnus-agent-overview-buffer))
+      ;; We do it the hard way.
+      (nnheader-find-nov-line (car articles))
+      (gnus-agent-copy-nov-line (car articles))
+      (pop articles)
+      (while (and articles
+                 (not (eobp)))
+       (while (and (not (eobp))
+                   (< (read (current-buffer)) (car articles)))
+         (forward-line 1))
+       (beginning-of-line)
+       (unless (eobp)
+         (gnus-agent-copy-nov-line (car articles))
+         (setq articles (cdr articles))))
+      (when articles
+       (let (b e)
+         (set-buffer gnus-agent-overview-buffer)
+         (setq b (point)
+               e (point-max))
+         (set-buffer nntp-server-buffer)
+         (insert-buffer-substring gnus-agent-overview-buffer b e))))))
 
 (defun gnus-agent-load-alist (group &optional dir)
   "Load the article-state alist for GROUP."
@@ -843,7 +852,7 @@ the actual number of articles toggled is returned."
           (gnus-agent-article-name ".agentview" group)))))
 
 (defun gnus-agent-save-alist (group &optional articles state dir)
-  "Save the article-state alist for GROUP."
+  "Load the article-state alist for GROUP."
   (nnheader-temp-write (if dir
                           (concat dir ".agentview")
                         (gnus-agent-article-name ".agentview" group))
@@ -893,11 +902,12 @@ the actual number of articles toggled is returned."
   (let ((gnus-command-method method)
        gnus-newsgroup-dependencies gnus-newsgroup-headers
        gnus-newsgroup-scored gnus-headers gnus-score
-       gnus-use-cache articles arts
+       gnus-use-cache articles score arts
        category predicate info marks score-param)
     ;; Fetch headers.
     (when (and (or (gnus-active group) (gnus-activate-group group))
-              (setq articles (gnus-agent-fetch-headers group)))
+              (setq articles (gnus-list-of-unread-articles group))
+              (gnus-agent-fetch-headers group articles))
       ;; Parse them and see which articles we want to fetch.
       (setq gnus-newsgroup-dependencies
            (make-vector (length articles) 0))
@@ -965,8 +975,8 @@ the actual number of articles toggled is returned."
 (defvar gnus-category-buffer "*Agent Category*")
 
 (defvar gnus-category-line-format-alist
-  `((?c gnus-tmp-name ?s)
-    (?g gnus-tmp-groups ?d)))
+  `((?c name ?s)
+    (?g groups ?d)))
 
 (defvar gnus-category-mode-line-format-alist
   `((?u user-defined ?s)))
@@ -1042,15 +1052,15 @@ The following commands are available:
 (defalias 'gnus-category-position-point 'gnus-goto-colon)
 
 (defun gnus-category-insert-line (category)
-  (let* ((gnus-tmp-name (car category))
-        (gnus-tmp-groups (length (cadddr category))))
+  (let* ((name (car category))
+        (groups (length (cadddr category))))
     (beginning-of-line)
     (gnus-add-text-properties
      (point)
      (prog1 (1+ (point))
        ;; Insert the text.
        (eval gnus-category-line-format-spec))
-     (list 'gnus-category gnus-tmp-name))))
+     (list 'gnus-category name))))
 
 (defun gnus-enter-category-buffer ()
   "Go to the Category buffer."
index 6326010..e95c147 100644 (file)
@@ -3,7 +3,7 @@
 ;;                                                           Yasuo Okabe
 ;; Author: Tatsuya Ichikawa <t-ichi@po.shiojiri.ne.jp>
 ;;         Yasuo OKABE <okabe@kuis.kyoto-u.ac.jp>
-;; Version: 1.10
+;; Version: 1.11
 ;; Keywords: mail , gnus , pop3
 ;;
 ;; SPECIAL THANKS
@@ -90,7 +90,7 @@
   :group 'mail
   :group 'news)
 
-(defconst pop3-fma-version-number "1.10")
+(defconst pop3-fma-version-number "1.11")
 (defconst pop3-fma-codename
 ;;  "Feel the wind"            ; 0.10
 ;;  "My home town"             ; 0.11
@@ -99,8 +99,8 @@
 ;;  "Money"                    ; 0.20
 ;;  "Still 19"                 ; 0.21
 ;;  "J boy"                    ; 1.00
-  "Blood line"                 ; 1.10
-;;  "Star ring"                        ; 0.xx
+;;  "Blood line"               ; 1.10
+  "Star ring"                  ; 0.xx
 ;;  "Goodbye Game"             ; 0.xx
   )
 (defconst pop3-fma-version (format "Multiple POP3 account utiliy for Gnus v%s - \"%s\""
@@ -151,6 +151,7 @@ Please do not set this valiable non-nil if you do not use Meadow.")
 (defvar str nil)
 (defvar pop3-fma-movemail-options pop3-fma-movemail-arguments)
 (defvar spool nil)
+(defvar movemail-output-buffer " *movemail-out*")
 
 (defun pop3-fma-init-message-hook ()
   (add-hook 'message-send-hook 'pop3-fma-message-add-header))
@@ -197,11 +198,24 @@ Please do not set this valiable non-nil if you do not use Meadow.")
                                     (concat "po:" pop3-maildrop)
                                     crashbox
                                     pop3-password)))))
+               (if (not (get-buffer movemail-output-buffer))
+                   (get-buffer-create movemail-output-buffer))
+               (set-buffer movemail-output-buffer)
+               (erase-buffer)
                (apply 'call-process (concat
                                      exec-directory
                                      pop3-fma-movemail-program)
-                      nil nil nil
-                      pop3-fma-movemail-arguments))
+                      nil movemail-output-buffer nil
+                      pop3-fma-movemail-arguments)
+               (let ((string (buffer-string)))
+                 (if (> (length string) 0)
+                     (progn
+                       (if (y-or-n-p
+                            (concat (substring string 0
+                                               (- (length string) 1))
+                                               " continue ??"))
+                           nil
+                         nil)))))
            (pop3-movemail crashbox))))
     (message "Checking new mail at %s ... " inbox)
     (call-process (concat exec-directory pop3-fma-movemail-program)
@@ -323,9 +337,10 @@ Argument PROMPT ."
 ;;
 (defun pop3-fma-get-movemail-type (inbox)
   (if (eq (nth 1 (assoc inbox pop3-fma-spool-file-alist)) 'apop)
-      lisp
+      'lisp
     pop3-fma-movemail-type))
 ;;
 (provide 'pop3-fma)
 ;;
 ;; pop3-fma.el ends here.
+