sync, and pop3 modified version himi_0_1_pop3_modified
authorhimi <himi>
Sun, 1 Mar 1998 03:00:58 +0000 (03:00 +0000)
committerhimi <himi>
Sun, 1 Mar 1998 03:00:58 +0000 (03:00 +0000)
23 files changed:
ChangeLog
lisp/ChangeLog
lisp/gnus-agent.el
lisp/gnus-art.el
lisp/gnus-demon.el
lisp/gnus-ems.el
lisp/gnus-picon.el
lisp/gnus-start.el
lisp/gnus-sum.el
lisp/gnus-util.el
lisp/gnus.el
lisp/message.el
lisp/nndb.el
lisp/nneething.el
lisp/nnheader.el
lisp/nnlistserv.el
lisp/nnmail.el
lisp/nnsoup.el
lisp/nnvirtual.el
lisp/pop3.el
readme
texi/gnus.texi
texi/message.texi

index df07ec1..e10261e 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,45 @@
+1998-03-01  Miyashita Hisashi  <himi@bird.scphys.kyoto-u.ac.jp>
+
+       * lisp/pop3.el (pop3-password): 
+       If this variable is t, memorize a input password.
+       (pop3-pass):
+       (pop3-apop): 
+       Not use pop3-password which is bound by outer extent.
+       (pop3-movemail):
+       Set pop3-password to memorize input password.
+       Call pop3-pass and pop3-apop with `password' argument.
+       Send LAST command to get unread messages,
+       when pop3-use-last-command is non-nil.
+       (pop3-use-last-command): 
+       New variable.
+
+1998-02-28  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+       * lisp/gnus.el (gnus-version-number): Update to 6.0.8.
+
+       * lisp/gnus.el: Sync up with qgnus-0.34.
+
+1998-02-28  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
+
+       * lisp/message.el: Sync up with qgnus-0.33.
+
+       * lisp/gnus-ems.el (gnus-bdf-image-file): New variable; moved from
+       gnus.el.
+       (gnus-mule-group-startup-message): New function; moved and renamed
+       from `gnus-group-startup-message' of gnus.el.
+
+       * lisp/gnus.el, lisp/gnus-sum.el, lisp/gnus-art.el,
+       lisp/gnus-agent.el: Sync up with qgnus-0.33.
+
+1998-02-28  Tatsuya Ichikawa  <t-ichi@niagara.shiojiri.ne.jp>
+
+       * 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.
+
 1998-02-26  MORIOKA Tomohiko  <morioka@jaist.ac.jp>
 
        * README.semi (How to join development): Modify for Semi-gnus
index fe61cf7..9bafbe5 100644 (file)
@@ -1,3 +1,54 @@
+Sat Feb 28 08:27:20 1998  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+       * gnus.el: Quassia Gnus v0.34 is released.
+
+Sat Feb 28 08:17:37 1998  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
+
+       * gnus.el: Quassia Gnus v0.33 is released.
+
+Sat Feb 28 08:10:27 1998  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+       * gnus-picon.el (gnus-picons-display-x-face): `buf' -- unbound
+       var. 
+
+Sat Feb 28 08:03:23 1998  François Pinard  <pinard@iro.umontreal.ca>
+
+       * gnus: configure'd.
+
+Sat Feb 28 07:43:00 1998  Nelson Jose dos Santos Ferreira  <Nelson.Ferreira@inesc.pt>
+
+       * nnsoup.el (nnsoup-store-reply): Fix double sep error.
+
+Sat Feb 28 07:01:17 1998  Lasse Rasinen  <lrasinen@iki.fi>
+
+       * gnus-start.el (gnus-ask-server-for-new-groups): Message more. 
+
+Fri Feb 27 13:26:34 1998  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+       * message.el (message-resend): Allow arbitrary Also's.
+
+1998-02-27  Dave Love  <d.love@dl.ac.uk>
+
+       * gnus-sum.el (gnus-simplify-subject-functions): Fix
+       customization, doc.
+
+1998-02-25  Dave Love  <d.love@dl.ac.uk>
+
+       * gnus-art.el (gnus-article-x-face-command): Replace leading `{'.
+
+Mon Feb 23 18:26:48 1998  Lars Magne Ingebrigtsen  <larsi@ifi.uio.no>
+
+       * gnus-agent.el (gnus-plugged): New command and keystroke.
+
+       * gnus-ems.el (gnus-ems-redefine): Define
+       'gnus-summary-set-display-table as a function that takes no
+       params. 
+
+       * gnus.el (gnus-interactive): Don't use gnus-sum macros.
+       (gnus-valid-select-methods): Include nnlistserv.
+
+       * gnus.el: Autoloaded things to make byte-comp silent.
+
 Mon Feb 23 18:06:47 1998  Lars Magne Ingebrigtsen  <larsi@menja.ifi.uio.no>
 
        * gnus.el: Quassia Gnus v0.32 is released.
index ed4cc72..df71437 100644 (file)
@@ -1,4 +1,4 @@
-;;; gnus-agent.el --- unplugged support for Gnus
+;;; gnus-agent.el --- unplugged support for Semi-gnus
 ;; Copyright (C) 1997,98 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
   (gnus))
 
 ;;;###autoload
+(defun gnus-plugged ()
+  "Start Gnus plugged."
+  (interactive)
+  (setq gnus-plugged t)
+  (gnus))
+
+;;;###autoload
 (defun gnus-agentize ()
   "Allow Gnus to be an offline newsreader.
 The normal usage of this command is to put the following as the
@@ -696,6 +703,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)
@@ -1252,7 +1270,8 @@ The following commands are available:
           (gnus-delete-line)
           (setq headers nil)))
        (when headers
-         (unless (memq (setq article (mail-header-number headers)) unreads)
+         (if (memq (setq article (mail-header-number headers)) unreads)
+             (forward-line 1)
            (if (not (< (inline
                          (gnus-time-to-day
                           (inline (nnmail-date-to-time
index bcf7368..762f0e9 100644 (file)
@@ -170,7 +170,7 @@ regexp.  If it matches, the text in question is not a signature."
   :group 'gnus-article-hiding)
 
 (defcustom gnus-article-x-face-command
-  " echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -"
+  "{ echo '/* Width=48, Height=48 */'; uncompface; } | icontopbm | xv -quit -"
   "*String or function to be executed to display an X-Face header.
 If it is a string, the command will be executed in a sub-shell
 asynchronously.         The compressed face will be piped to this command."
index a5765fe..f3968ea 100644 (file)
@@ -31,6 +31,7 @@
 (require 'gnus-int)
 (require 'nnheader)
 (require 'nntp)
+(require 'nnmail)
 (eval-and-compile
   (if (string-match "XEmacs" (emacs-version))
       (require 'itimer)
index ec43267..b955f1d 100644 (file)
@@ -1,7 +1,8 @@
-;;; gnus-ems.el --- functions for making Gnus work under different Emacsen
+;;; gnus-ems.el --- functions for making Semi-gnus work under different Emacsen
 ;; Copyright (C) 1995,96,97,98 Free Software Foundation, Inc.
 
 ;; Author: Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+;;         Tatsuya Ichikawa <t-ichi@niagara.shiojiri.ne.jp>
 ;; Keywords: news
 
 ;; This file is part of GNU Emacs.
           (truncate-string valstr (, max-width))
         valstr))))
 
+(defvar gnus-bdf-image-file nil)
+(defun gnus-mule-group-startup-message (&optional x y)
+  "Insert startup message in current buffer."
+  ;; Insert the message.
+  (erase-buffer)
+  (insert
+   (if (featurep 'bitmap)
+     (format "              %s
+
+"
+            "" (if (and (stringp gnus-bdf-image-file)
+                        (file-exists-p gnus-bdf-image-file))
+                   (insert-file gnus-image-file)))
+     (format "              %s
+          _    ___ _             _
+          _ ___ __ ___  __    _ ___
+          __   _     ___    __  ___
+              _           ___     _
+             _  _ __             _
+             ___   __            _
+                   __           _
+                    _      _   _
+                   _      _    _
+                      _  _    _
+                  __  ___
+                 _   _ _     _
+                _   _
+              _    _
+             _    _
+            _
+          __
+
+"
+            "")))
+  ;; And then hack it.
+  (gnus-indent-rigidly (point-min) (point-max)
+                      (/ (max (- (window-width) (or x 46)) 0) 2))
+  (goto-char (point-min))
+  (forward-line 1)
+  (let* ((pheight (count-lines (point-min) (point-max)))
+        (wheight (window-height))
+        (rest (- wheight pheight)))
+    (insert (make-string (max 0 (* 2 (/ rest 3))) ?\n)))
+  ;; Fontify some.
+  (put-text-property (point-min) (point-max) 'face 'gnus-splash-face)
+  (goto-char (point-min))
+  (setq mode-line-buffer-identification (concat " " gnus-version))
+  (setq gnus-simple-splash t)
+  (set-buffer-modified-p t))
+
 (defun gnus-encode-coding-string (string system)
   string)
 
       "Display table used in summary mode buffers.")
     (fset 'gnus-cite-add-face 'gnus-mule-cite-add-face)
     (fset 'gnus-max-width-function 'gnus-mule-max-width-function)
-    (fset 'gnus-summary-set-display-table 'ignore)
+    (fset 'gnus-summary-set-display-table (lambda ()))
     (fset 'gnus-encode-coding-string 'encode-coding-string)
     (fset 'gnus-decode-coding-string 'decode-coding-string)
+<<<<<<< gnus-ems.el
     
+=======
+
+    (and window-system
+        (module-installed-p 'bitmap)
+        (fset 'gnus-group-startup-message 'gnus-mule-group-startup-message))
+
+>>>>>>> 1.3
     (when (boundp 'gnus-check-before-posting)
       (setq gnus-check-before-posting
            (delq 'long-lines
index 40d15c1..7f04650 100644 (file)
@@ -90,7 +90,7 @@ Some people may want to add \"unknown\" to this list."
   :group 'picons)
 
 (defcustom gnus-picons-x-face-file-name
-  '(format "/tmp/picon-xface.%s.xbm" (user-login-name))
+  (format "/tmp/picon-xface.%s.xbm" (user-login-name))
   "*The name of the file in which to store the converted X-face header."
   :type 'string
   :group 'picons)
@@ -159,13 +159,6 @@ List of pairs (KEY . GLYPH) where KEY is either a filename or an URL.")
   "Picons file names cache.
 List of pairs (KEY . NAME) where KEY is (USER HOST DBS) and NAME is an URL.")
 
-(defvar gnus-group-annotations nil
-  "List of annotations added/removed when selecting/exiting a group")
-(defvar gnus-article-annotations nil
-  "List of annotations added/removed when selecting an article")
-(defvar gnus-x-face-annotations nil
-  "List of annotations added/removed when selecting an article with an X-Face.")
-
 (defvar gnus-picons-jobs-alist nil
   "List of jobs that still need be done.
 This is a list of (SYM-ANN TAG ARGS...) where SYM-ANN three annotations list,
@@ -178,28 +171,16 @@ arguments necessary for the job.")
 
 ;;; Functions:
 
-(defun gnus-picons-remove (symbol)
-  "Remove all annotations in variable named SYMBOL.
-This function is careful to set it to nil before removing anything so that
-asynchronous process don't get crazy."
-  (setq gnus-picons-jobs-alist (remassq symbol gnus-picons-jobs-alist))
-  ;; notify running job that it may have been preempted
-  (if (and (listp gnus-picons-job-already-running)
-          (eq (car gnus-picons-job-already-running) symbol))
-      (setq gnus-picons-job-already-running t))
-  ;; clear all annotations
-  (mapc (function (lambda (item)
-                   (if (annotationp item)
-                       (delete-annotation item))))
-       (prog1 (symbol-value symbol)
-         (set symbol nil))))
-
 (defun gnus-picons-remove-all ()
   "Removes all picons from the Gnus display(s)."
   (interactive)
-  (gnus-picons-remove 'gnus-article-annotations)
-  (gnus-picons-remove 'gnus-group-annotations)
-  (gnus-picons-remove 'gnus-x-face-annotations))
+  (map-extents (function (lambda (ext unused) (delete-annotation ext) nil))
+              nil nil nil nil nil 'gnus-picon)
+  (setq gnus-picons-jobs-alist '())
+  ;; notify running job that it may have been preempted
+  (if (and (listp gnus-picons-job-already-running)
+          gnus-picons-job-already-running)
+      (setq gnus-picons-job-already-running t)))
 
 (defun gnus-get-buffer-name (variable)
   "Returns the buffer name associated with the contents of a variable."
@@ -226,41 +207,33 @@ asynchronous process don't get crazy."
                     (list (list (current-buffer)
                                 (cons nil gnus-picons-has-modeline-p)))))))
 
-(defun gnus-picons-prepare-for-annotations (annotations)
-  "Prepare picons buffer for puting annotations memorized in ANNOTATIONS.
-ANNOTATIONS should be a symbol naming a variable wich contains a list of
-annotations.  Sets buffer to `gnus-picons-display-where'."
+(defun gnus-picons-prepare-for-annotations ()
+  "Prepare picons buffer for putting annotations."
   ;; let drawing catch up
   (when gnus-picons-refresh-before-display
     (sit-for 0))
   (gnus-picons-set-buffer)
-  (gnus-picons-remove annotations))
+  (gnus-picons-remove-all))
 
-(defsubst gnus-picons-make-annotation (&rest args)
+(defun gnus-picons-make-annotation (&rest args)
   (let ((annot (apply 'make-annotation args)))
-    (set-extent-property annot 'duplicable nil)
+    (set-extent-property annot 'gnus-picon t)
+    (set-extent-property annot 'duplicable t)
     annot))
 
 (defun gnus-picons-article-display-x-face ()
   "Display the x-face header bitmap in the 'gnus-picons-display-where buffer."
-  ;; delete any old ones.
-  ;; This is needed here because gnus-picons-display-x-face will not
-  ;; be called if there is no X-Face header
-  (gnus-picons-remove 'gnus-x-face-annotations)
-  ;; display the new one.
   (let ((gnus-article-x-face-command 'gnus-picons-display-x-face))
     (gnus-article-display-x-face)))
 
 (defun gnus-picons-x-face-sentinel (process event)
-  (let* ((env (assq process gnus-picons-processes-alist))
-        (annot (cdr env)))
+  (when (memq process gnus-picons-processes-alist)
     (setq gnus-picons-processes-alist
-         (remassq process gnus-picons-processes-alist))
-    (when (annotationp annot)
-      (set-annotation-glyph annot
-                           (make-glyph gnus-picons-x-face-file-name))
-      (if (memq annot gnus-x-face-annotations)
-         (delete-file gnus-picons-x-face-file-name)))))
+         (delq process gnus-picons-processes-alist))
+    (gnus-picons-set-buffer)
+    (gnus-picons-make-annotation (make-glyph gnus-picons-x-face-file-name)
+                                nil 'text)
+    (delete-file gnus-picons-x-face-file-name)))
 
 (defun gnus-picons-display-x-face (beg end)
   "Function to display the x-face header in the picons window.
@@ -268,26 +241,17 @@ To use:  (setq gnus-article-x-face-command 'gnus-picons-display-x-face)"
   (interactive)
   (if (featurep 'xface)
       ;; Use builtin support
-      (let ((buf (current-buffer)))
-       (save-excursion
-         (gnus-picons-prepare-for-annotations 'gnus-x-face-annotations)
-         (setq gnus-x-face-annotations
-               (cons (gnus-picons-make-annotation
-                      (vector 'xface
-                              :data (concat "X-Face: "
-                                            (buffer-substring beg end buf)))
-                                      nil 'text)
-                     gnus-x-face-annotations))))
+      (save-excursion
+       (gnus-picons-set-buffer)
+       (gnus-picons-make-annotation
+        (vector 'xface
+                :data (concat "X-Face: " (buffer-substring beg end)))
+        nil 'text))
     ;; convert the x-face header to a .xbm file
     (let* ((process-connection-type nil)
-          (annot (save-excursion
-                   (gnus-picons-prepare-for-annotations
-                    'gnus-x-face-annotations)
-                   (gnus-picons-make-annotation nil nil 'text)))
           (process (start-process-shell-command "gnus-x-face" nil 
                                                 gnus-picons-convert-x-face)))
-      (push annot gnus-x-face-annotations)
-      (push (cons process annot) gnus-picons-processes-alist)
+      (push process gnus-picons-processes-alist)
       (process-kill-without-query process)
       (set-process-sentinel process 'gnus-picons-x-face-sentinel)
       (process-send-region process beg end)
@@ -312,37 +276,28 @@ To use:  (setq gnus-article-x-face-command 'gnus-picons-display-x-face)"
                             (message-tokenize-header gnus-local-domain "."))
                       (message-tokenize-header (substring from (1+ at-idx))
                                                "."))))
-         (gnus-picons-prepare-for-annotations 'gnus-article-annotations)
-         ;; if display in article buffer, the group annotations
-         ;; wrongly placed.  Move them here
-         (if (eq gnus-picons-display-where 'article)
-             (dolist (ext gnus-group-annotations)
-               (when (extent-live-p ext)
-                 (set-extent-endpoints ext (point) (point)))))
+         (gnus-picons-prepare-for-annotations)
+         (gnus-group-display-picons)
          (if (null gnus-picons-piconsearch-url)
-             (setq gnus-article-annotations
-                   (nconc gnus-article-annotations
-                          (gnus-picons-display-pairs
-                           (gnus-picons-lookup-pairs
-                            addrs gnus-picons-domain-directories)
-                           gnus-picons-display-as-address
-                           "." t)
-                          (if (and gnus-picons-display-as-address addrs)
-                              (list (gnus-picons-make-annotation
-                                     [string :data "@"] nil
-                                     'text nil nil nil t)))
-                          (gnus-picons-display-picon-or-name
-                           (gnus-picons-lookup-user username addrs)
-                           username t)))
+             (progn
+               (gnus-picons-display-pairs (gnus-picons-lookup-pairs
+                                           addrs
+                                           gnus-picons-domain-directories)
+                                          gnus-picons-display-as-address
+                                          "." t)
+               (if (and gnus-picons-display-as-address addrs)
+                   (gnus-picons-make-annotation
+                    [string :data "@"] nil 'text nil nil nil t))
+               (gnus-picons-display-picon-or-name
+                (gnus-picons-lookup-user username addrs)
+                username t))
            (push (list 'gnus-article-annotations 'search username addrs
                        gnus-picons-domain-directories t)
                  gnus-picons-jobs-alist)
-           (gnus-picons-next-job))
-
-         (add-hook 'gnus-summary-exit-hook 'gnus-picons-remove-all))))))
+           (gnus-picons-next-job)))))))
 
 (defun gnus-group-display-picons ()
-  "Display icons for the group in the gnus-picons-display-where buffer."
+  "Display icons for the group in the `gnus-picons-display-where' buffer."
   (interactive)
   (when (and (featurep 'xpm)
             (or (not (fboundp 'device-type)) (equal (device-type) 'x))
@@ -350,16 +305,15 @@ To use:  (setq gnus-article-x-face-command 'gnus-picons-display-x-face)"
                 (not (string-match gnus-picons-group-excluded-groups
                                    gnus-newsgroup-name))))
     (save-excursion
-      (gnus-picons-prepare-for-annotations 'gnus-group-annotations)
+      (gnus-picons-prepare-for-annotations)
       (if (null gnus-picons-piconsearch-url)
-         (setq gnus-group-annotations
-               (gnus-picons-display-pairs
+         (gnus-picons-display-pairs
                 (gnus-picons-lookup-pairs
                  (reverse (message-tokenize-header
                            (gnus-group-real-name gnus-newsgroup-name) 
                            "."))
                  gnus-picons-news-directories)
-                t "."))
+                t ".")
        (push (list 'gnus-group-annotations 'search nil
                    (message-tokenize-header 
                     (gnus-group-real-name gnus-newsgroup-name) ".")
@@ -372,7 +326,7 @@ To use:  (setq gnus-article-x-face-command 'gnus-picons-display-x-face)"
 
       (add-hook 'gnus-summary-exit-hook 'gnus-picons-remove-all))))
 
-(defsubst gnus-picons-lookup-internal (addrs dir)
+(defun gnus-picons-lookup-internal (addrs dir)
   (setq dir (expand-file-name dir gnus-picons-database))
   (gnus-picons-try-face (dolist (part (reverse addrs) dir)
                          (setq dir (expand-file-name part dir)))))
@@ -601,8 +555,7 @@ none, and whose CDR is the corresponding element of DOMAINS."
 
 (defun gnus-picons-network-display-internal (sym-ann glyph part right-p)
   (gnus-picons-set-buffer)
-  (set sym-ann (nconc (symbol-value sym-ann)
-                     (gnus-picons-display-picon-or-name glyph part right-p)))
+  (gnus-picons-display-picon-or-name glyph part right-p)
   (gnus-picons-next-job-internal))
 
 (defun gnus-picons-network-display-callback (url part sym-ann right-p)
@@ -697,6 +650,7 @@ none, and whose CDR is the corresponding element of DOMAINS."
                                       (prog1 (gnus-picons-parse-filenames)
                                         (kill-buffer (current-buffer)))))
 
+;; Initiate a query on the picon database
 (defun gnus-picons-network-search (user addrs dbs sym-ann right-p)
   (let* ((host (mapconcat 'identity addrs "."))
         (key (list (or user "unknown") host (if user
index 0159fb7..974936e 100644 (file)
@@ -1076,9 +1076,10 @@ for new groups."
         hashtb))
       (when new-newsgroups
        (gnus-subscribe-hierarchical-interactive new-newsgroups)))
-    (when (> groups 0)
-      (gnus-message 6 "%d new newsgroup%s arrived."
-                   groups (if (> groups 1) "s have" " has")))
+     (if (> groups 0)
+        (gnus-message 5 "%d new newsgroup%s arrived"
+                      groups (if (> groups 1) "s have" " has"))
+       (gnus-message 5 "No new newsgroups"))
     (when got-new
       (setq gnus-newsrc-last-checked-date new-date))
     got-new))
index 3959334..6637221 100644 (file)
@@ -130,9 +130,12 @@ comparing subjects."
 
 (defcustom gnus-simplify-subject-functions nil
   "List of functions taking a string argument that simplify subjects.
-The functions are applied recursively."
+The functions are applied recursively.
+
+Useful functions to put in this list include: `gnus-simplify-subject-re',
+`gnus-simplify-subject-fuzzy' and `gnus-simplify-whitespace'."
   :group 'gnus-thread
-  :type '(repeat (list function)))
+  :type '(repeat function))
 
 (defcustom gnus-simplify-ignored-prefixes nil
   "*Regexp, matches for which are removed from subject lines when simplifying fuzzily."
index dbe42bc..856b7a2 100644 (file)
 (require 'message)
 
 (eval-and-compile
-  (autoload 'nnmail-date-to-time "nnmail"))
+  (autoload 'nnmail-date-to-time "nnmail")
+  (autoload 'rmail-insert-rmail-file-header "rmail")
+  (autoload 'rmail-count-new-messages "rmail")
+  (autoload 'rmail-show-message "rmail"))
 
 (defun gnus-boundp (variable)
   "Return non-nil if VARIABLE is bound and non-nil."
index 266efbe..17d7c58 100644 (file)
@@ -246,11 +246,11 @@ is restarted, and sometimes reloaded."
   :link '(custom-manual "(gnus)Exiting Gnus")
   :group 'gnus)
 
-(defconst gnus-version-number "6.0.7"
+(defconst gnus-version-number "6.0.8"
   "Version number for this version of gnus.")
 
 (defconst gnus-version
-  (format "Semi-gnus %s (based on Quassia Gnus v0.32)" gnus-version-number)
+  (format "Semi-gnus %s (based on Quassia Gnus v0.34)" gnus-version-number)
   "Version string for this version of gnus.")
 
 (defcustom gnus-inhibit-startup-message nil
@@ -1128,6 +1128,7 @@ slower."
     ("nnfolder" mail respool address)
     ("nngateway" none address prompt-address physical-address)
     ("nnweb" none)
+    ("nnlistserv" none)
     ("nnagent" post-mail))
   "*An alist of valid select methods.
 The first element of each list lists should be a string with the name
@@ -1632,7 +1633,9 @@ gnus-newsrc-hashtb should be kept so that both hold the same information.")
       gnus-group-list-groups gnus-group-first-unread-group
       gnus-group-set-mode-line gnus-group-set-info gnus-group-save-newsrc
       gnus-group-setup-buffer gnus-group-get-new-news
-      gnus-group-make-help-group gnus-group-update-group)
+      gnus-group-make-help-group gnus-group-update-group
+      gnus-clear-inboxes-moved gnus-group-iterate
+      gnus-group-group-name)
      ("gnus-bcklg" gnus-backlog-request-article gnus-backlog-enter-article
       gnus-backlog-remove-article)
      ("gnus-art" gnus-article-read-summary-keys gnus-article-save
@@ -2074,11 +2077,13 @@ g -- Group name."
        ((= c ?g)
         (gnus-group-group-name))
        ((= c ?A)
-        (gnus-summary-article-number))
+        (gnus-summary-skip-intangible)
+        (or (get-text-property (point) 'gnus-number)
+            (gnus-summary-last-subject)))
        ((= c ?H)
-        (gnus-summary-article-header))
+        (gnus-data-header (gnus-data-find (gnus-summary-article-number))))
        (t
-        (error "Not implemented spec")))
+        (error "Non-implemented spec")))
        out)
       (cond
        ((= c ?r)
index 8de61e2..04180da 100644 (file)
@@ -931,7 +931,10 @@ The cdr of ech entry is a function for applying the face to a region.")
   (autoload 'gnus-output-to-rmail "gnus-util")
   (autoload 'mail-abbrev-in-expansion-header-p "mailabbrev")
   (autoload 'nndraft-request-associate-buffer "nndraft")
-  (autoload 'nndraft-request-expire-articles "nndraft"))
+  (autoload 'nndraft-request-expire-articles "nndraft")
+  (autoload 'gnus-open-server "gnus-int")
+  (autoload 'gnus-request-post "gnus-int")
+  (autoload 'rmail-output "rmail"))
 
 \f
 
@@ -3739,7 +3742,7 @@ Optional NEWS will use news to forward instead of mail."
        (goto-char (point-max)))
       (insert mail-header-separator)
       ;; Rename all old ("Also-")Resent headers.
-      (while (re-search-backward "^\\(Also-\\)?Resent-" beg t)
+      (while (re-search-backward "^\\(Also-\\)*Resent-" beg t)
        (beginning-of-line)
        (insert "Also-"))
       ;; Quote any "From " lines at the beginning.
index 088b5c6..032d7c0 100644 (file)
@@ -70,7 +70,8 @@
   (autoload 'cancel-timer "timer")
   (autoload 'telnet "telnet" nil t)
   (autoload 'telnet-send-input "telnet" nil t)
-  (autoload 'timezone-parse-date "timezone"))
+  (autoload 'timezone-parse-date "timezone")
+  (autoload 'gnus-declare-backend "gnus-start"))
 
 ;; Declare nndb as derived from nntp
 
index be3bcbd..4584560 100644 (file)
@@ -68,6 +68,8 @@ If this variable is nil, no files will be excluded.")
 
 \f
 
+(autoload 'gnus-encode-coding-string "gnus-ems")
+
 ;;; Interface functions.
 
 (nnoo-define-basics nneething)
index c16bdef..5751973 100644 (file)
@@ -59,7 +59,10 @@ on your system, you could say something like:
  (autoload 'mail-position-on-field "sendmail")
  (autoload 'message-remove-header "message")
  (autoload 'cancel-function-timers "timers")
- (autoload 'gnus-point-at-eol "gnus-util"))
+ (autoload 'gnus-point-at-eol "gnus-util")
+ (autoload 'gnus-delete-line "gnus-util")
+ (autoload 'gnus-buffer-live-p "gnus-util")
+ (autoload 'gnus-encode-coding-string "gnus-ems"))
 
 ;;; Header access macros.
 
index e74b6a2..684595c 100644 (file)
@@ -30,8 +30,6 @@
 
 (eval-when-compile (require 'cl))
 
-(push '("nnlistserv" none) gnus-valid-select-methods)
-
 (require 'nnoo)
 (require 'nnweb)
 
index c12f099..5c0cd70 100644 (file)
@@ -33,7 +33,9 @@
 (require 'custom)
 
 (eval-and-compile
-  (autoload 'gnus-error "gnus-util"))
+  (autoload 'gnus-error "gnus-util")
+  (autoload 'gnus-buffer-live-p "gnus-util")
+  (autoload 'gnus-encode-coding-string "gnus-ems"))
 
 (defgroup nnmail nil
   "Reading mail with Gnus."
index 39db45f..6eb1a02 100644 (file)
@@ -666,6 +666,7 @@ backend for the messages.")
   (require 'mail-utils)
   (let ((tembuf (generate-new-buffer " message temp"))
        (case-fold-search nil)
+       (real-header-separator mail-header-separator)
        (mail-header-separator "")
        delimline
        (mailbuf (current-buffer)))
@@ -692,7 +693,7 @@ backend for the messages.")
            ;; Change header-delimiter to be what sendmail expects.
            (goto-char (point-min))
            (re-search-forward
-            (concat "^" (regexp-quote mail-header-separator) "\n"))
+            (concat "^" (regexp-quote real-header-separator) "\n"))
            (replace-match "\n")
            (backward-char 1)
            (setq delimline (point-marker))
index 556b318..41964dc 100644 (file)
@@ -38,6 +38,7 @@
 (require 'gnus-util)
 (require 'gnus-start)
 (require 'gnus-sum)
+(require 'gnus-msg)
 (require 'cl)
 
 (nnoo-declare nnvirtual)
index 1bfd8ec..647df79 100644 (file)
@@ -4,7 +4,7 @@
 
 ;; Author: Richard L. Pieri <ratinox@peorth.gweep.net>
 ;; Keywords: mail, pop3
-;; Version: 1.3l+
+;; Version: 1.3l+himi-1
 
 ;; This file is part of GNU Emacs.
 
 (defvar pop3-password-required t
   "*Non-nil if a password is required when connecting to POP server.")
 (defvar pop3-password nil
-  "*Password to use when connecting to POP server.")
+  "*Password to use when connecting to POP server.
+If this variable is t, your input password would be memorized.")
+(defvar pop3-use-last-command nil
+  "*Non-nil when you want to use `LAST' command to get unread messages.")
 
 (defvar pop3-authentication-scheme 'pass
   "*POP3 authentication scheme.
@@ -73,21 +76,23 @@ Used for APOP authentication.")
         (crashbuf (get-buffer-create " *pop3-retr*"))
         (n 1)
         message-count
-        (pop3-password pop3-password)
+        password
         )
     ;; for debugging only
     (if pop3-debug (switch-to-buffer (process-buffer process)))
     ;; query for password
-    (if (and pop3-password-required (not pop3-password))
-       (setq pop3-password
+    (if (and pop3-password-required (not (stringp pop3-password)))
+       (setq password
              (pop3-read-passwd (format "Password for %s: " pop3-maildrop))))
     (cond ((equal 'apop pop3-authentication-scheme)
-          (pop3-apop process pop3-maildrop))
+          (pop3-apop process pop3-maildrop password))
          ((equal 'pass pop3-authentication-scheme)
           (pop3-user process pop3-maildrop)
-          (pop3-pass process))
+          (pop3-pass process password))
          (t (error "Invalid POP3 authentication scheme.")))
     (setq message-count (car (pop3-stat process)))
+    (if pop3-use-last-command
+       (setq n (+ 1 (pop3-last process))))
     (while (<= n message-count)
       (message (format "Retrieving message %d of %d from %s..."
                       n message-count pop3-mailhost))
@@ -107,6 +112,7 @@ Used for APOP authentication.")
       )
     (pop3-quit process)
     (kill-buffer crashbuf)
+    (if pop3-password (setq pop3-password password))
     )
   )
 
@@ -260,17 +266,17 @@ Return the response string if optional second argument is non-nil."
     (if (not (and response (string-match "+OK" response)))
        (error (format "USER %s not valid." user)))))
 
-(defun pop3-pass (process)
+(defun pop3-pass (process password)
   "Send authentication information to the server."
-  (pop3-send-command process (format "PASS %s" pop3-password))
+  (pop3-send-command process (format "PASS %s" password))
   (let ((response (pop3-read-response process t)))
     (if (not (and response (string-match "+OK" response)))
        (pop3-quit process))))
 
-(defun pop3-apop (process user)
+(defun pop3-apop (process user password)
   "Send alternate authentication information to the server."
   (if (not (fboundp 'md5)) (autoload 'md5 "md5"))
-  (let ((hash (md5 (concat pop3-timestamp pop3-password))))
+  (let ((hash (md5 (concat pop3-timestamp password))))
     (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)))
diff --git a/readme b/readme
index c8249c2..a232075 100644 (file)
--- a/readme
+++ b/readme
@@ -6,9 +6,9 @@ To use Gnus you first have to unpack the files, which you've obviously
 done, because you are reading this.
 
 You should definitely byte-compile the source files. To do that, you
-can simply say "make" in this directory.  If you are using XEmacs, you
-*must* say "make EMACS=xemacs".  In that case you may also want to
-pull down the package of nice glyphs from
+can simply say "./configure; make" in this directory.  If you are
+using XEmacs, you *must* say "make EMACS=xemacs".  In that case you
+may also want to pull down the package of nice glyphs from
 <URL:http://www.gnus.org/~larsi/etc.tar.gz>.  It should be installed
 into the "gnus-5.4.53/etc" directory.
 
index ee0fbb7..3d28d62 100644 (file)
@@ -1,7 +1,7 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename gnus
-@settitle Quassia Gnus 0.32 Manual
+@settitle Quassia Gnus 0.34 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -316,7 +316,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
-@title Quassia Gnus 0.32 Manual
+@title Quassia Gnus 0.34 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -352,7 +352,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local
 spool or your mbox file.  All at the same time, if you want to push your
 luck.
 
-This manual corresponds to Quassia Gnus 0.32.
+This manual corresponds to Quassia Gnus 0.34.
 
 @end ifinfo
 
@@ -12297,7 +12297,7 @@ ignored when handling global score files.
 @item read-only
 Read-only score files will not be updated or saved.  Global score files
 should feature this atom (@pxref{Global Score Files}).  (Note:
-@dfn{Global} here really means @dfn{global}; not just your personal
+@dfn{Global} here really means @dfn{global}; not your personal
 apply-to-all-groups score files.)
 
 @item orphan
@@ -17299,6 +17299,10 @@ Allow breaking lengthy NNTP commands.
 gnus-article-highlight-limit, to disable highlighting in big articles. 
 
 @item
+Editing an article should put the article to be edited
+in a special, unique buffer.
+
+@item
 Solve the halting problem.
 
 @c TODO
index 08eb899..f9142e4 100644 (file)
@@ -1,7 +1,7 @@
 \input texinfo                  @c -*-texinfo-*-
 
 @setfilename message
-@settitle Message 0.32 Manual
+@settitle Message 0.34 Manual
 @synindex fn cp
 @synindex vr cp
 @synindex pg cp
@@ -42,7 +42,7 @@ into another language, under the above conditions for modified versions.
 @tex
 
 @titlepage
-@title Message 0.32 Manual
+@title Message 0.34 Manual
 
 @author by Lars Magne Ingebrigtsen
 @page
@@ -83,7 +83,7 @@ Message mode buffers.
 * Key Index::         List of Message mode keys.
 @end menu
 
-This manual corresponds to Message 0.32.  Message is distributed with
+This manual corresponds to Message 0.34.  Message is distributed with
 the Gnus distribution bearing the same version number as this manual
 has.