** Gnus changes.
+*** The Gnus distribution no longer bundles Custom and Widget.
+If your Emacs doesn't come with these libraries, fetch them from
+<URL:http://www.dina.kvl.dk/~abraham/custom/>. You also then need to
+add the following to the lisp/dgnushack.el file:
+
+ (push "~/lisp/custom" load-path)
+
+Modify to suit your needs.
+
+*** New functionality for using Gnus as an offline newsreader has been
+added. A plethora of new commands and modes have been added. See the
+Gnus manual for the full story.
+
+*** The nndraft backend has returned, but works differently than
+before. All Message buffers are now also articles in the nndraft
+group, which is created automatically.
+
+*** `gnus-alter-header-function' can now be used to alter header
+values.
+
+*** `gnus-summary-goto-article' now accept Message-ID's.
+
+*** A new Message command for deleting text in the body of a message
+outside the region: `C-c C-v'.
+
+*** You can now post to component group in nnvirtual groups with
+`C-u C-c C-c'.
+
+*** `nntp-rlogin-program' -- new variable to ease customization.
+
+*** `C-u C-c C-c' in `gnus-article-edit-mode' will now inhibit
+re-highlighting of the article buffer.
+
+*** New element in `gnus-boring-article-headers' -- `long-to'.
+
+*** `M-i' symbolic prefix command. See the section "Symbolic
+Prefixes" in the Gnus manual for details.
+
+*** `L' and `I' in the summary buffer now take the symbolic prefix
+`a' to add the score rule to the "all.SCORE" file.
+
+*** `gnus-simplify-subject-functions' variable to allow greater
+control over simplification.
+
+*** `A T' -- new command for fetching the current thread.
+
+*** `/ T' -- new command for including the current thread in the
+limit.
+
+*** `M-RET' is a new Message command for breaking cited text.
+
+*** \\1-expressions are now valid in `nnmail-split-methods'.
+
+*** The `custom-face-lookup' function has been removed.
+If you used this function in your initialization files, you must
+rewrite them to use `face-spec-set' instead.
+
+*** Cancelling now uses the current select method. Symbolic prefix
+`a' forces normal posting method.
+
+*** New command to translate M******** sm*rtq**t*s into proper text
+-- `W d'.
+
+*** For easier debugging of nntp, you can set `nntp-record-commands'
+to a non-nil value.
+
+*** nntp now uses ~/.authinfo, a .netrc-like file, for controlling
+where and how to send AUTHINFO to NNTP servers.
+
+*** A command for editing group parameters from the summary buffer
+has been added.
+
+*** A history of where mails have been split is available.
+
+*** A new article date command has been added -- `article-date-iso8601'.
+
+*** Subjects can be simplified when threading by setting
+`gnus-score-thread-simplify'.
+
+*** A new function for citing in Message has been added --
+`message-cite-original-without-signature'.
+
+*** `article-strip-all-blank-lines' -- new article command.
+
+*** A new Message command to kill to the end of the article has
+been added.
+
+*** A minimum adaptive score can be specified by using the
+`gnus-adaptive-word-minimum' variable.
+
+*** The "lapsed date" article header can be kept continually
+updated by the `gnus-start-date-timer' command.
+
+*** Web listserv archives can be read with the nnlistserv backend.
+
+*** Old dejanews archives can now be read by nnweb.
+
+*** Byte-compilation of user-specs now works under XEmacs.
+
+*** `gnus-posting-styles' has been re-activated.
@SET_MAKE@
EMACS = @EMACS@
-XEMACS = xemacs21
+XEMACS = xemacs
all: lick info
lick:
- cd lisp && $(MAKE) EMACS="$(EMACS)" lispdir="$(lispdir)" all
+ cd lisp && $(MAKE) EMACS=$(EMACS) lispdir=$(lispdir) all
install:
- cd lisp && $(MAKE) EMACS="$(EMACS)" lispdir="$(lispdir)" install
- cd texi && $(MAKE) EMACS="$(EMACS)" install
+ cd lisp && $(MAKE) EMACS=$(EMACS) lispdir=$(lispdir) install
+ cd texi && $(MAKE) EMACS=$(EMACS) install
# Rule for Lars and nobody else.
some:
- cd lisp && $(MAKE) EMACS="$(EMACS)" some
+ cd lisp && $(MAKE) EMACS=$(EMACS) some
l:
- cd lisp && $(MAKE) EMACS="$(EMACS)" clever
+ cd lisp && $(MAKE) EMACS=$(EMACS) clever
info:
- cd texi && $(MAKE) EMACS="$(EMACS)" all
+ cd texi && $(MAKE) EMACS=$(EMACS) all
clean:
rm -f */*.orig */*.rej *.orig *.rej
xsome:
- cd lisp && $(MAKE) EMACS="$(XEMACS)" some
+ cd lisp && $(MAKE) EMACS=$(XEMACS) some
elclean:
rm lisp/*.elc
x:
- make EMACS=xemacs21
+ make EMACS=xemacs
distclean:
make clean
rm -f config.log config.status Makefile
osome:
- make EMACS=xemacs21 some
+ make EMACS=emacs-19.34 some
config.status: $(srcdir)/configure
$(SHELL) ./config.status --recheck
-Sun Sep 6 21:19:26 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+Sun Sep 6 20:09:36 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * gnus.el: Pterodactyl Gnus v0.17 is released.
+ * gnus.el: Gnus v5.6.43 is released.
-1998-09-06 05:45:17 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-09-06 19:41:54 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * time-date.el: Renamed from "date".
+ * gnus-sum.el (gnus-remove-thread): Unhide threads before
+ removing.
+ (gnus-data-compute-positions): Ditto.
- * gnus.el: Removed all timezone dependencies.
+1998-08-31 11:40:13 Shuhei KOBAYASHI <shuhei-k@jaist.ac.jp>
- * score-mode.el: Removed.
- (gnus-score-edit-insert-date): Use date.
+ * nnmail.el (nnmail-date-to-time): Parse time locally if no
+ timezone.
- * date.el (float-to-time): New function.
+1998-08-31 11:21:53 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * nnspool.el (nnspool-seconds-since-epoch): Removed.
+ * gnus-srvr.el (gnus-browse-foreign-server): Protect against
+ out-of-range articles.
- * date.el (time-to-float): New function.
+ * gnus-msg.el (gnus-summary-reply): Don't inhibit posting styles.
- * message.el (message-make-date): Use format-time-string.
- (message-make-expires): Use make-date.
+1998-08-30 22:33:33 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-xmas.el (gnus-xmas-seconds-since-epoch): Removed.
+ * gnus-score.el (gnus-summary-increase-score): Temporary third
+ majuscle.
- * gnus-util.el (gnus-dd-mmm): Use date.
- (gnus-sortable-date): Ditto.
+1998-08-30 22:32:31 Dan Christensen <jdc@playmate.mat.jhu.edu>
- * message.el (message-make-date): Take an optional time.
+ * gnus-score.el (gnus-summary-increase-score): Score thread on
+ Message-ID.
- * gnus: Applied patches from 5.6.43.
+1998-08-29 02:46:00 Simon Josefsson <jas@pdc.kth.se>
- * date.el (if): Use parse-time.
+ * gnus-sum.el (gnus-summary-mark-article-as-read):
+ (gnus-summary-mark-article-as-unread):
+ (gnus-summary-mark-article): Call gnus-request-update-mark.
- * gnus-score.el (gnus-summary-score-entry): Make into a command
- again.
+1998-08-29 Mike McEwan <mike@lotusland.demon.co.uk>
- * gnus-group.el (gnus-group-get-new-news-this-group): Only call if
- gnus-agent.
+ * gnus-agent.el (gnus-agent-fetch-headers): Cater for when there's
+ no .agentview, all articles have been expired, or everything bar a
+ few downloaded arts have been expired.
+ (gnus-agent-expire): Mark *all* expired articles as read.
- * gnus.el (gnus-agent-meta-information-header): Moved here.
+Sat Aug 29 19:17:19 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
-1998-09-05 Mike McEwan <mike@lotusland.demon.co.uk>
+ * gnus.el: Gnus v5.6.42 is released.
- * gnus-agent.el (gnus-agent-scoreable-headers): New variable.
- (gnus-agent-fetch-group-1): Score article headers using normal
- group score files if the download score rule of a category/group
- is `file'.
- (gnus-agent-fetch-group-1): Don't parse the entire .overview when
- deciding what articles to download.
- (gnus-agent-fetch-group-1): Don't push headers through scoring and
- predicate processing if predicate is `true' or `false'.
+1998-08-29 17:06:27 Simon Josefsson <jas@pdc.kth.se>
-1998-09-06 01:56:02 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-sum.el (gnus-summary-make-menu-bar): Typo.
- * gnus-score.el (gnus-score-load-score-alist): Bind coding system.
+1998-08-29 12:47:42 Tatsuya Ichikawa <ichikawa@hv.epson.co.jp>
- * gnus-art.el (gnus-article-setup-buffer): Enable multibyte.
+ * gnus-agent.el: Use nnheader-insert-file-contents.
- * score-mode.el (score-mode-coding-system): New variable.
- (gnus-score-edit-exit): Use it.
+1998-08-29 12:18:18 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-04 Jason R Mastaler <jason@4b.org>
+ * nnvirtual.el (nnvirtual-request-group): Update the right group.
- * drums.el: Corrected typo.
+1998-08-27 16:46:38 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-05 23:24:43 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+ * gnus-sum.el (gnus-data-compute-positions): Didn't work on hidden
+ threads.
- * mm-bodies.el (mm-body-encoding): Faster version.
+ * nnvirtual.el (nnvirtual-request-group): Work when always
+ updating.
+ (nnvirtual-always-rescan): Default to t.
-1998-09-05 22:23:03 Lars Magne Ingebrigtsen <larsi@gnus.org>
+Thu Aug 27 11:03:59 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * gnus-art.el (gnus-article-decode-charset): Only decode text
- things.
+ * gnus.el: Gnus v5.6.41 is released.
- * message.el (message-output): Use rmail.
+1998-08-27 Mike McEwan <mike@lotusland.demon.co.uk>
- * rfc2047.el (rfc2047-encoded-word-regexp): Allow spaces in the
- word part.
+ * gnus-agent.el (gnus-agent-fetch-group-1): Leave the calculation
+ of `articles' to `gnus-agent-fetch-headers'.
+ (gnus-agent-fetch-headers): We only want headers that are after
+ the last entry in `gnus-group-alist'.
- * mm-util.el (mm-charset-to-coding-system): Use
- rfc2047-default-charset.
- (mm-known-charsets): New variable.
+1998-08-27 09:45:42 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * message.el (message-caesar-region): Bugged out.
+ * Makefile.in (warn): New.
-Sat Sep 5 21:55:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus.el: Removed unreferenced bound variables all over.
- * gnus.el: Pterodactyl Gnus v0.16 is released.
+ * gnus-group.el (gnus-update-group-mark-positions): Removed topic.
-1998-09-05 17:30:11 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-cus.el (gnus-group-customize): No part.
- * nnmail.el (nnmail-expired-article-p): Use predicate.
+ * gnus-agent.el (gnus-category-line-format-alist): Renamed specs.
+ (gnus-category-insert-line): Use it.
- * date.el (time-less-p): Renamed.
+Thu Aug 27 09:29:53 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * gnus-art.el (gnus-article-decode-charset): Really fetch headers
- from the headers.
+ * gnus.el: Gnus v5.6.40 is released.
- * rfc2047.el (rfc2047-decode-region): Use the mm decoding
- functions.
+1998-08-27 09:19:31 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-group.el (gnus-group-sort-selected-flat): Didn't work at
- all.
- (gnus-group-sort-selected-groups-by-alphabet): Changed interface
- to all functions.
+ * gnus-agent.el (gnus-agent-mode): Only toggle plugged in group
+ mode.
-Sat Sep 5 01:45:52 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+1998-08-27 07:25:47 Lars Balker Rasmussen <gnort@daimi.aau.dk>
- * gnus.el: Pterodactyl Gnus v0.15 is released.
+ * message.el (message-supersede): Check the right headers.
-1998-09-05 00:21:22 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-26 13:51:18 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * date.el: New file.
+ * gnus-sum.el (gnus-sort-threads): Changed level.
- * gnus-util.el (gnus-encode-date): Removed.
- (gnus-time-less): Ditto.
+1998-08-26 Mike McEwan <mike@lotusland.demon.co.uk>
- * nnmail.el (nnmail-date-to-time): Removed.
- (nnmail-time-less): Ditto.
- (nnmail-days-to-time): Ditto.
- (nnmail-time-since): Ditto.
+ * gnus-sum.el (gnus-build-all-threads): `save-excursion' and
+ `set-buffer' back to `gnus-summary-buffer' in order to access
+ buffer-local variables.
- * drums.el: New file.
+1998-08-26 06:00:44 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-04 00:25:52 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-sum.el (gnus-data-compute-positions): More and faster.
- * message.el (message-encode-message-body): Encode headers with
- body encoding.
+1998-08-26 05:41:15 Matt Pharr <mmp@Graphics.Stanford.EDU>
- * rfc2047.el (rfc2047-default-charset): Renamed.
- (rfc2047-encodable-p): Use it.
+ * message.el (message-wash-subject): Remove more.
- * base64.el (mm-util): Required.
+1998-08-25 11:33:28 Tatsuya Ichikawa <ichikawa@hv.epson.co.jp>
-1998-09-03 16:28:30 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-cache.el (gnus-cache-overview-coding-system): New
+ variable.
- * gnus-msg.el (gnus-post-method): Peel off real info from opened
- servers.
+1998-08-25 08:23:05 Albert L. Ting <alt@artisan.com>
+
+ * gnus-group.el (gnus-fetch-group-other-frame): New command.
+
+1998-08-25 07:24:51 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-uu.el (gnus-uu-grab-articles): Check for pseudos.
+
+ * gnus-art.el (gnus-ignored-headers): More headers.
+
+ * gnus-sum.el (gnus-summary-move-article): Update the right
+ group.
+
+1998-08-23 14:31:31 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-ignored-headers): More headers.
+
+1998-08-23 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-agent.el (gnus-agent-copy-nov-line): Return to beginning of
+ line before next read.
+ (gnus-agent-braid-nov): Remove redundant `let'.
+
+1998-08-22 10:40:54 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (article-display-x-face): Allow multiple X-Faces
+ under XEmacs.
+
+Sat Aug 22 10:28:25 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.39 is released.
+
+1998-08-22 10:06:03 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-ignored-headers): Added more headers.
+
+1998-08-21 02:49:56 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nnweb.el (nnweb-type): Doc fix.
+
+ * gnus-sum.el (gnus-summary-set-process-mark): Move to the right
+ article.
+
+1998-08-20 23:10:01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nnmail.el (nnmail-spool-file): Allow lists of files.
+
+1998-08-20 Per Starback <starback@update.uu.se>
+
+ * gnus/gnus-start.el (gnus-check-first-time-used): Change current
+ buffer before creating help group.
+
+1998-08-20 01:33:08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-msg.el (gnus-message-style-insertions): New variable.
+ (gnus-message-insert-stylings): New function.
+ (gnus-configure-posting-styles): Use them.
+
+ * gnus-topic.el (gnus-topic-mode): Don't alter summary-exit-hook.
+
+ * gnus-sum.el (gnus-select-newsgroup): Don't update group.
+
+ * gnus-msg.el (gnus-setup-message): Bind message-mode-hook.
+ (gnus-inhibit-posting-styles): New variable.
+ (gnus-summary-reply): Use it.
+ (gnus-configure-posting-styles): Ditto.
+
+ * gnus-group.el (gnus-group-suspend): Don't kill dribble buffer.
+
+Thu Aug 20 00:28:35 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.38 is released.
+
+1998-08-20 00:02:50 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-util.el (gnus-output-to-rmail): Removed.
+ * message.el (message-mail): Doc fix.
- * gnus-art.el (gnus-summary-save-in-rmail): Use
- gnus-output-to-rmailrmail-output-to-rmail-file.
+1998-08-19 23:22:02 Bill Pringlemeir <bpringle@my-dejanews.com>
- * rfc2047.el (rfc2047-decode-region): Fold case.
- (rfc2047-decode): Use decode-string.
+ * messcompat.el (message-send-mail-function): Initialized from
+ send-mail-function.
- * mm-util.el: Provide mm-char-int.
+1998-08-19 23:20:42 Martin Larose <larosem@IRO.UMontreal.CA>
-Thu Sep 3 15:23:22 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * message.el (message-send-coding-system): New variable.
- * gnus.el: Pterodactyl Gnus v0.14 is released.
+1998-08-19 19:00:37 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-03 15:08:30 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-msg.el (gnus-configure-posting-styles): Reinstated most of
+ old code.
- * mm-bodies.el (mm-body-encoding): Go through the buffer to make
- sure we have 7bit.
+ * gnus-start.el (gnus-save-newsrc-file): Use coding system.
-1998-09-02 14:38:18 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1980-06-08 03:53:56 Mike McEwan <mike@lotusland.demon.co.uk>
- * gnus-msg.el (gnus-post-method): Use opened servers, and remove
- ducplicates.
- (gnus-inews-insert-mime-headers): Removed.
+ * gnus-agent.el (gnus-agent-braid-nov): Go to right place.
- * message.el (message-caesar-region): Protect against MULE chars.
+1980-06-08 03:01:48 Shuhei KOBAYASHI <shuhei-k@jaist.ac.jp>
-1998-09-02 00:36:23 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+ * gnus-group.el (gnus-group-suspend): Fix.
- * mm-util.el (if): fset the right function.
+1998-08-18 00:25:11 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-02 00:31:53 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-cite.el (gnus-cited-opened-text-button-line-format-alist):
+ New n spec.
- * gnus-art.el (gnus-article-decode-charset): Use real
- read-coding-system.
+ * gnus-group.el (gnus-group-suspend): Use mapcar.
-1998-09-01 17:58:40 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-17 14:35:33 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mm-bodies.el (mm-decode-body): Protect against malformed
- base64.
- (mm-decode-body): Check that buffer-file-coding-system is
- non-nil.
+ * gnus-ems.el (gnus-add-minor-mode): Set mode var.
-Tue Sep 1 10:29:33 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-start.el (gnus-slave-mode): New function.
- * gnus.el: Pterodactyl Gnus v0.13 is released.
+ * gnus-msg.el (gnus-post-method): Work with current in nndraft.
-1998-09-01 09:14:33 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-16 23:30:14 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-util.el (gnus-strip-whitespace): Already defined.
- Removed.
+ * gnus-art.el (gnus-request-article-this-buffer): Allow recursive
+ selection of nneething groups.
- * gnus-art.el (gnus-article-decode-charset): Strip whitespace.
+ * nneething.el (nneething-address): Renamed from directory.
- * gnus-util.el (gnus-strip-whitespace): New function.
+Sun Aug 16 18:59:41 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * mm-util.el (mm-content-type-charset): Downcase.
+ * gnus.el: Gnus v5.6.37 is released.
-1998-08-31 23:04:29 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-16 14:52:43 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-art.el (gnus-article-decode-charset): Accept a prefix.
- (gnus-article-decode-charset): Don't fetch all headers.
+ * gnus.el: Autoload gnus-summary-wide-reply.
- * mm-util.el (mm-read-coding-system): New function.
+ * gnus-sum.el (gnus-get-newsgroup-headers): Return the value of
+ In-Reply-To.
- * mm-bodies.el (mm-decode-body): Check the right charset.
+ * gnus-msg.el (gnus-setup-message): Posting styles have to be
+ configured in message-mode-hook.
- * gnus-sum.el (gnus-summary-mode-line-format): Ditto.
+ * nntp.el (nntp-connection-timeout): Restored.
+ (nntp-open-connection): Use it.
- * gnus-art.el (gnus-article-mode-line-format): Use short group
- format.
+1998-08-15 22:46:49 Lars Magne Ingebrigtsen <larsi@gnus.org>
-Mon Aug 31 23:03:13 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-group.el (gnus-group-make-useful-group): Doc fix.
- * gnus.el: Pterodactyl Gnus v0.12 is released.
+ * gnus-art.el (gnus-article-push-button): Place point where you
+ click.
-1998-08-31 22:39:36 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-15 Mike McEwan <mike@lotusland.demon.co.uk>
- * mm-bodies.el (mm-decode-body): Don't do charset unless MULE.
+ * gnus-agent.el (gnus-agent-save-group-info): Update "groups" file
+ if `nntp-server-list-active-group' is nil.
- * gnus-art.el (gnus-article-decode-charset): Supply cte.
- (gnus-article-decode-charset): Always run.
+1998-08-15 00:35:03 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mm-bodies.el (mm-decode-body): Decode cte.
+ * gnus-score.el (gnus-summary-increase-score): Swap t and r.
-Mon Aug 31 22:14:50 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-sum.el (gnus-remove-thread): Didn't work with sparse
+ threads.
- * gnus.el: Pterodactyl Gnus v0.11 is released.
+1998-08-14 François Pinard <pinard@iro.umontreal.ca>
-1998-08-31 14:27:25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * nndoc.el (nndoc-generate-mime-parts-head): Use original Subject,
+ Message-ID, and References in fully blown articles.
- * message.el (message-encode-message-body): Ditto.
+Fri Aug 14 23:03:51 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * gnus-art.el (gnus-article-decode-mime-words): New command and
+ * gnus.el: Gnus v5.6.36 is released.
+
+1998-08-14 21:49:22 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.el (load): Push onto list.
+
+ * gnus-group.el (gnus-group-get-new-news-this-group): Store active
+ info.
+
+Fri Aug 14 21:41:59 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.35 is released.
+
+1998-08-14 00:00:15 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-srvr.el (gnus-server-scan-server): Error better.
+
+ * nndir.el: Make independent of nnmh.
+ Revert.
+
+ * message.el (message-remove-text-with-property): New function.
+ (message-fix-before-sending): Check for invisible text.
+
+ * gnus.el (load): Create the Gnus buffer even when no splash.
+
+ * gnus-msg.el (gnus-setup-message): Add buffer to list.
+
+ * gnus-win.el (gnus-remove-some-windows): Use new buffer system.
+ (gnus-delete-windows-in-gnusey-frames): Ditto.
+
+ * gnus.el (gnus-add-buffer): New function.
+
+1998-08-13 23:38:21 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-xmas.el (gnus-buffer-list): Removed.
+
+ * gnus.el (gnus-buffers): New variable.
+ (gnus-get-buffer-create): New function; used throughout.
+ (gnus-buffers): New function.
+
+ * gnus-msg.el (gnus-configure-posting-styles): Go to eoh
+ reliably.
+
+ * message.el (message-goto-eoh): New command.
+
+1998-08-13 23:13:53 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-msg.el (gnus-setup-message): use message-setup-hook
+ instead
+ (gnus-configure-posting-styles): new posting-style 'body
+ (gnus-configure-posting-styles): insert headers immediately
+
+1998-08-13 13:05:36 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-score.el (gnus-summary-increase-score): Change thread to
+ "r".
+
+ * gnus-sum.el (gnus-summary-scroll-down): New command and
keystroke.
- (gnus-article-decode-charset): Ditto.
- (gnus-article-decode-charset): Only work under MULE.
- * mm-util.el (mm-content-type-charset): New function.
+ * gnus-agent.el (gnus-agent-expire): Check that directories
+ exist.
- * nnmail.el (nnmail-delete-incoming): Changed to nil.
+1998-08-12 20:56:41 Simon Josefsson <jas@pdc.kth.se>
- * message.el (message-send-mail): Insert MIME headers.
- (message-check-news-body-syntax): Don't warn for escape sequences.
- (message-check-news-body-syntax): Insert MIME headers.
+ * gnus-cache.el (gnus-uncacheable-groups): doc change
+ (gnus-cacheable-groups): new variable
+ (gnus-cache-possibly-enter-article): use it
- * mm-bodies.el (mm-body-encoding): New function.
+1998-08-12 22:30:16 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * message.el (message-encode-message-body): New function.
+ * nntp.el (nntp-encode-text): Too much text.
- * mm-bodies.el: New file.
+1998-08-12 21:58:50 Matt Pharr <mmp@Graphics.Stanford.EDU>
- * mm-util.el (mm-narrow-to-head): New function.
+ * message.el (message-make-forward-subject-function): New
+ variable.
+ (message-wash-forwarded-subjects): Ditto.
- * rfc2047.el (rfc2047-encode): Use it.
+Wed Aug 12 21:09:58 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * mm-util.el: Provide mm-encode-coding-region.
+ * gnus.el: Gnus v5.6.34 is released.
- * gnus-sum.el (gnus-summary-mode): Enable multibyte.
+1998-08-12 13:32:38 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-util.el (gnus-set-work-buffer): Enable multibyte.
+ * gnus-msg.el (gnus-post-method): Don't use `current' in drafts.
- * mm-util.el (mm-enable-multibyte): New function.
+ * gnus-score.el (gnus-summary-increase-score): Changed T to h and
+ downcase.
- * message.el (message-set-work-buffer): Set multibyte.
+Tue Aug 11 20:46:25 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * gnus.el (gnus-continuum-version): Be valid forever and ever.
+ * gnus.el: Gnus v5.6.33 is released.
- * gnus-util.el (gnus-point-at-eol): Removed.
- (gnus-point-at-bol): Ditto.
+1998-08-11 20:07:55 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * base64.el (base64-decode-region): Commented out messaging.
+ * gnus-group.el (gnus-group-apropos): Check symbol value.
-1998-08-31 Didier Verna <verna@inf.enst.fr>
+ * gnus-cite.el (gnus-cited-closed-text-button-line-format):
+ Changed.
- * gnus-msg.el (gnus-group-mail): make it behave like
- gnus-group-post-news with regards to the prefix (this enables the
- use of posting styles).
+Tue Aug 11 19:42:42 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
-1998-08-31 12:53:32 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus.el: Gnus v5.6.32 is released.
- * gnus.el (gnus-article-display-hook): Added
- gnus-article-decode-rfc1522 to hook.
+1998-08-11 13:36:56 Lars Magne Ingebrigtsen <larsi@gnus.org>
-Mon Aug 31 12:43:46 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * nndoc.el (nndoc-type-alist): Do MIME digests before multiparts.
- * gnus.el: Pterodactyl Gnus v0.10 is released.
+ * gnus.el (gnus-predefined-server-alist): Expand vars.
-1998-08-31 11:45:13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-09 Dave Love <d.love@dl.ac.uk>
- * nnfolder.el (nnfolder-delete-mail): Narrow to mail and allow
- hook to be run.
+ * gnus-art.el (article-display-x-face): Don't try (and fail) to
+ display multiple faces.
-1998-08-30 17:59:07 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-11 11:41:43 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * rfc2047.el (rfc2047-encodable-p): Use find-charset-region.
+ * gnus-art.el (gnus-header-newsgroups-face): Don't bold so much.
- * mm-util.el (mm-charsets-in-region): Removed.
+ * gnus-group.el (gnus-group-rename-group): Remove old group name
+ from list of killed groups.
- * rfc2047.el: Renamed file.
+ * gnus-int.el (gnus-get-function): Error better.
- * gnus-msg.el (gnus-copy-article-buffer): Multibyte.
+ * gnus-art.el (gnus-article-narrow-to-signature): Inhibit motion
+ hooks.
+ (article-hide-pgp): Delete text instead of hiding it.
- * message.el (message-mode): Set multibyte.
+ * gnus-group.el (gnus-group-find-new-groups): Ditto.
- * mm-util.el (mm-charsets-in-region): Copied here.
+ * gnus-start.el (gnus-find-new-newsgroups): Accept C-u C-u as a
+ total query.
- * gnus-util.el: Removed gnus-truncate-string.
+1998-08-10 09:31:36 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-art.el (gnus-article-decode-mime-words): Use 1522.
+ * gnus-art.el (gnus-article-prepare): Place point at the beginning
+ of the body.
- * rfc1522.el (rfc1522-unencoded-charsets): New variable.
- (rfc1522-encodable-p): New function.
- (rfc1522-encode-message-header): Use it.
+ * gnus-cite.el (gnus-cite-attribution-face): Changed to italic.
-Sun Aug 30 17:46:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-art.el (gnus-article-edit-article): Delete "annotation"
+ text.
+ (gnus-insert-prev-page-button): Mark as annotation.
+ (gnus-insert-next-page-button): Ditto.
- * gnus.el: Pterodactyl Gnus v0.9 is released.
+ * gnus-cite.el (gnus-cited-closed-text-button-line-format): New
+ variable.
+ (gnus-cited-closed-text-button-line-format-alist): Ditto.
+ (gnus-article-toggle-cited-text): Toggle between different
+ symbols.
-1998-08-30 16:13:08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-09 19:58:36 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mm-util.el: Shadow encode-coding-string.
+ * gnus.el (gnus-version): Remove backend info.
- * base64.el (base64-encode-region): Don't add newline.
+Sun Aug 9 19:37:40 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * rfc1522.el (rfc1522-narrow-to-field): Copied here.
+ * gnus.el: Gnus v5.6.31 is released.
- * mm-util.el: New file.
+1998-08-09 François Pinard <pinard@iro.umontreal.ca>
- * mm-decode.el: Somewhat depleted.
- * mm-encode.el: Ditto.
+ * nndoc.el: Split MIME multipart messages, maybe recursively.
+ (nndoc-mime-parts-type-p, nndoc-transform-mime-parts,
+ nndoc-generate-mime-parts-head, nndoc-dissect-mime-parts,
+ nndoc-dissect-mime-parts-sub): New functions.
- * rfc1522.el: New file.
+ * nndoc.el: Quoting boundaries is optional, for multipart digests.
- * mm-util.el (mm-replace-chars-in-string): Copied here.
+1998-08-09 17:51:25 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mm-encode.el (mm-q-encode-region): New function.
+ * gnus-agent.el (gnus-agent-save-group-info): Check whether file
+ exists.
- * qp.el (quoted-printable-encode-region): Take an optional CLASS
- param.
+ * message.el (message-goto-signature): Return nil if no sig.
+ (message-delete-not-region): Delete properly if no sig.
- * mm-encode.el (mm-encode-word-region): Downcase.
+1998-08-09 17:26:30 Simon Josefsson <jas@pdc.kth.se>
-Sun Aug 30 15:28:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-srvr.el (gnus-browse-make-menu-bar): select did read
- * gnus.el: Pterodactyl Gnus v0.8 is released.
+1998-08-09 15:51:43 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-08-30 12:23:03 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-sum.el (t): Added keystroke for W W C.
- * message.el (message-send-mail): Encode headers.
+ * gnus-cite.el (gnus-article-hide-citation-maybe): hiden->hidden.
- * qp.el (quoted-printable-encode-region): Encode 8-bit words.
- (quoted-printable-encode-region): Upcase.
+Sun Aug 9 15:46:16 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * message.el (message-default-charset): New variable.
+ * gnus.el: Gnus v5.6.30 is released.
- * qp.el (quoted-printable-encode-region): Optional param FOLD.
+1998-08-09 10:48:31 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * message.el (message-narrow-to-field): Changed name.
+ * message.el (message-cite-original-without-signature): Peel off
+ blank lines.
- * mm-encode.el: New file.
+ * gnus-art.el (gnus-article-maybe-highlight): Doc fix.
- * message.el (message-narrow-to-header): New function.
+ * gnus-sum.el (gnus-data-enter-list): Threw away all new list data
+ at the beginning of the buffer.
- * gnus-art.el (gnus-article-decode-mime-words): Place point in the
- right buffer.
+1998-08-07 01:41:29 Gareth Jones <gdj1@gdjones.demon.co.uk>
-Sun Aug 30 12:15:54 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-score.el (gnus-summary-increase-score): Don't downcase
+ before lookin in char-to-header.
- * gnus.el: Pterodactyl Gnus v0.7 is released.
+1998-08-07 01:33:22 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-08-30 01:26:12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus.el (gnus-predefined-server-alist): Too many parentheses.
- * gnus.el: Remove autoload for
- gnus-article-mime-decode-quoted-printable.
+1998-08-06 11:20:08 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mm-decode.el (mm-charset-to-coding-system): Allow iso-8859-1 to
- be decoded in non-MULE Emacsen.
+ * gnus.el (gnus-continuum-version): Include quassia.
- * gnus-xmas.el (gnus-xmas-logo-color-alist): More brown.
+ * gnus-sum.el (gnus-data-enter-list): Check before entering list.
-1998-08-29 SL Baur <steve@altair.xemacs.org>
+1998-08-06 11:13:56 Francois Felix Ingrand <felix@dial.oleane.com>
- * gnus-xmas.el (gnus-xmas-logo-color-alist): Try shades of brown.
+ * gnus-salt.el (gnus-generate-vertical-tree): Don't go too far to
+ the left.
-1998-08-30 01:04:57 Lars Magne Ingebrigtsen <larsi@gnus.org>
+Thu Aug 6 07:58:17 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * mm-decode.el: Check for coding-system-list.
+ * gnus.el: Gnus v5.6.29 is released.
-Sun Aug 30 00:59:15 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+1998-08-06 07:10:31 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus.el: Pterodactyl Gnus v0.6 is released.
+ * gnus-agent.el (gnus-agent-expire): Check whether (caar
+ gnus-agent-article-alist) is nil.
-1998-08-30 00:36:28 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus.el (gnus-read-method): Allow selecting predefined servers.
- * nnheader.el (fboundp): Protect code-coding-string.
+ * gnus-topic.el (gnus-topic-update-topic-line): Compute right
+ number when inserting missing topic lines.
- * gnus-art.el (gnus-article-mode): Check that set-buffer-multibyte
- is available.
+ * gnus-start.el (gnus-get-unread-articles): Check that the group
+ is alive.
-Sat Aug 29 23:24:31 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-score.el (gnus-score-load-score-alist): Better error
+ messaging.
- * gnus.el: Pterodactyl Gnus v0.5 is released.
+Tue Aug 4 09:42:31 1998 Kurt Swanson <ksw@dna.lth.se>
-1998-08-29 22:38:35 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus-salt.el (gnus-pick-mouse-pick-region): Fix picking bug due
+ to use of gnus-read-event-char.
- * gnus-art.el (gnus-article-mode): Make article buffer multibyte.
- (gnus-hack-decode-rfc1522): Removed.
+1998-07-28 Dave Love <d.love@dl.ac.uk>
- * mm-decode.el (mm-charset-coding-system-alist): Check better.
+ * gnus-group.el (gnus-group-fetch-faq): Don't mung dots in group
+ name.
-Sat Aug 29 22:20:39 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+1998-07-27 Dave Love <d.love@dl.ac.uk>
- * gnus.el: Gnus v0.4 is released.
+ * gnus-topic.el (gnus-topic-mode-map): Provide Emacs tty
+ alternatives to [tab], [(meta tab)].
-1998-08-29 20:53:29 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-06 04:41:38 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-art.el (gnus-article-decode-mime-words): New command and
- keystroke.
+ * gnus-start.el (gnus-startup-file-coding-system): New variable.
+ (gnus-read-init-file): Use it.
+ (gnus-read-newsrc-el-file): Ditto.
+
+ * gnus-sum.el (gnus-thread-ignore-subject): Changed default.
+
+1998-08-06 04:38:02 Richard Stallman <rms@gnu.org>
+
+ * message.el (sendmail): Required.
+
+1998-08-06 02:11:37 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-sum.el (gnus-auto-select-same): Dix fix.
+
+1998-08-04 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-sum.el (gnus-select-newsgroup): Set
+ `gnus-newsgroup-unselected' when selecting specific articles via
+ SELECT-ARTICLE - there may be more headers to fetch if
+ `gnus-fetch-old-headers' is non-nil.
+ (gnus-summary-read-group): pass SELECT-ARTICLE to
+ `gnus-summary-read-group-1' and reset to nil when going to next group.
+ (gnus-summary-read-group): Change `select-article' to
+ `select-articles' for consistency.
+
+Tue Aug 4 05:25:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.28 is released.
+
+1998-08-03 22:00:25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nndoc.el (nndoc-set-delims): Removed article-end.
+ (nndoc-dissect-buffer): Use eobp.
+
+1998-08-03 19:59:36 Trung Tran-Duc <trung.tranduc@prague.ixoskillspam.cz>
+
+ * nntp.el (nntp-open-connection): Bind coding-system-for-write.
+
+1998-07-31 16:45:36 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-group.el (gnus-group-read-ephemeral-group): Make the server
+ unique.
+
+1998-07-28 François Pinard <pinard@iro.umontreal.ca>
+
+ * gnus-uu.el (gnus-uu-reginize-string): Consider the number of
+ parts as part of the fixed subject, instead of a wild quantity.
+
+1998-07-30 21:47:23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-cache.el (gnus-summary-insert-cached-articles): Sort
+ articles.
+
+ * nndir.el (nndir): Use nnml functions.
+
+Mon Jul 27 03:26:00 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.27 is released.
+
+1998-07-27 02:27:11 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-topic.el (gnus-topic-update-unreads): New function.
+
+ * gnus-sum.el (gnus-summary-limit): Update mode line.
+
+ * gnus-soup.el (gnus-soup-add-article): Update mode line.
+
+ * gnus-group.el (gnus-group-make-menu-bar): Bug.
+
+ * gnus-art.el (gnus-article-make-menu-bar): Menu.
+
+ * gnus-sum.el (gnus-summary-make-menu-bar): Bug reports.
+
+ * gnus-topic.el (gnus-topic-mode-map): h -> H.
+
+1998-07-19 16:59 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-util.el (gnus-netrc-syntax-table): @ is whitespace
+
+1998-07-17 Gordon Matzigkeit <gord@fig.org>
+
+ * gnus-uu.el (gnus-uu-reginize-string): Simplify by looking
+ from back to front for part numbers, rather than skipping
+ leading ``version numbers.''
+
+ (gnus-uu-part-number): Make consistent with
+ gnus-uu-reginize-string.
+
+1998-07-26 19:01:58 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-art.el (gnus-request-article-this-buffer): Pass along
+ header.
+
+ * gnus-sum.el (gnus-summary-update-article): Don't pass along
+ iheader to regeneration routine.
+
+1998-07-27 KOSEKI Yoshinori <kose@yk.NetLaputa.ne.jp>
+
+ * nnmail.el (nnmail-move-inbox): Clear nnmail-internal-password,
+ when supplied Password is incorrect.
+
+Sat Jul 25 19:31:36 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.26 is released.
+
+1998-07-25 14:53:24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-salt.el (gnus-pick-mouse-pick-region): Use
+ gnus-read-event-char.
+
+Sat Jul 25 02:43:35 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.25 is released.
+
+1998-07-25 00:03:24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-group.el (gnus-group-read-ephemeral-group): Ditto.
+
+ * gnus-sum.el (gnus-summary-read-group-1): Ditto.
+
+ * gnus-group.el (gnus-group-read-group): Accept article list.
+
+1998-07-24 14:35:02 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-msg.el (gnus-configure-posting-styles): Quote some.
+
+ * message.el (message-ignored-supersedes-headers): Added X-Trace
+ and X-Complaints-To.
+
+ * nnmail.el (gnus-util): Required.
+
+1998-07-21 23:03:13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.el (gnus-news-group-p): Bogosity in params.
+
+1998-07-21 16:14:32 Robert Bihlmeyer <robbe@orcus.priv.at>
+
+ * gnus-util.el (gnus-globalify-regexp): New function.
+
+1998-07-18 21:49:01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus-sum.el (gnus-list-of-unread-articles): Peel off articles
+ outside active range.
+
+1998-07-15 10:47:39 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * nnvirtual.el (nnvirtual-request-type): Handle non-numerical
+ articles.
+
+ * gnus.el (gnus-news-group-p): Do something sensible with negative
+ articlies.
+
+Wed Jul 15 10:27:05 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-salt.el (gnus-tree-minimize-window): Allow numbers.
+
+Wed Jul 15 10:25:29 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire): Ignored ticks.
+
+Wed Jul 15 10:15:28 1998 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * nntp.el (nntp-send-authinfo): Message better and stuff.
+
+Wed Jul 15 10:10:07 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-message-archive-group): Allow sexp.
+
+Wed Jul 15 09:56:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-select-newsgroup): Accept select-articles
+ para,
+
+1998-07-13 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-sum.el (gnus-select-newsgroup): Don't call the Agent to
+ mark articles as read until *all* headers have been retrieved.
+
+Wed Jul 15 09:06:18 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndir.el (nndir): Use nnml to request article.
+
+1998-07-11 SL Baur <steve@altair.xemacs.org>
+
+ * gnus-topic.el (gnus-topic-mode-map): Use modern key syntax.
+
+Sun Jul 12 04:01:22 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-current-home-score-file): New function.
+
+1998-07-11 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-agent.el (gnus-agent-fetch-headers): Note last fetched
+ headers per sesion to aid expiry in `headers only' groups.
+
+ * gnus-agent.el (gnus-agent-expire): Update group info to add
+ expired articles to list of read articles and prevent
+ re-fetching.
+
+1998-07-12 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-active-file-coding-system): Changed to
+ binary.
+
+Sun Jul 12 03:16:18 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-score-load-file): Specify which alist to
+ decay.
+
+1998-07-12 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-startup-file-coding-system): New variable.
+ (gnus-read-newsrc-el-file): Use it.
+
+Sat Jul 11 03:03:53 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.24 is released.
+
+Fri Jul 10 04:23:24 1998 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * gnus-util.el (gnus-parse-netrc): Allow "default" values.
+
+Fri Jul 10 04:15:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-server-opened-hook): Doc change.
+
+Fri Jul 10 03:03:48 1998 François Pinard <pinard@iro.umontreal.ca>
+
+ * gnus-sum.el (gnus-summary-respool-trace): New command and
+ keystroke.
+
+Fri Jul 10 02:18:01 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-prin1): Bind print-escape-multibyte to nil.
+
+Mon Jul 6 01:02:59 1998 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-range.el (gnus-sorted-complement): Fix comments.
+
+Thu Jul 2 11:16:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-iterate): New macro.
+
+ * message.el (message-pop-to-buffer): Clone locals.
+
+ * gnus-msg.el (gnus-posting-styles): Reinstated.
+ (gnus-posting-style-alist): Ditto.
+
+Wed Jul 1 18:02:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-int.el (gnus-get-function): Set funct to nil.
+
+1998-07-01 16:57:38 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-int.el (gnus-get-function): returned non-nil when
+ function wasn't bound, if noerror=t
+
+Wed Jul 1 17:30:41 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-topic.el (gnus-topic-mode-map): Bind TAB and M-TAB.
+
+ * gnus-sum.el (gnus-build-sparse-threads): Make sure no dates are
+ nil.
+ (gnus-summary-limit-mark-excluded-as-read): Use the intersection.
+
+ * gnus-msg.el (gnus-setup-message): Clone all local variables from
+ the summary buffer.
+
+Wed Jul 1 14:03:52 1998 Richard Stallman <rms@santafe.edu>
+
+ * message.el (message-cite-original): Use mail-citation-hook.
+ (message-cite-function): Ditto.
+
+Wed Jul 1 14:00:53 1998 Rajappa Iyer <rsi@lucent.com>
+
+ * gnus-salt.el (gnus-pick-mode-map): Changed keymap.
+
+Wed Jul 1 13:33:26 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.23 is released.
+
+Wed Jul 1 12:52:32 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-record-command): Give more precise time info.
+ (nntp-next-result-arrived-p): Look for the end of error lines.
+
+Wed Jul 1 12:24:06 1998 François Pinard <pinard@iro.umontreal.ca>
+
+ * gnus-util.el (gnus-delete-if): Would do the opposite.
+
+Wed Jul 1 01:53:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-build-sparse-threads): Didn't work at all.
+
+Tue Jun 30 15:56:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-send-authinfo): Store the user name.
+ (nntp-authinfo-user): New variable.
+
+ * gnus-sum.el (gnus-summary-limit-mark-excluded-as-read): Would
+ mark some articles as unread.
+
+ * gnus-agent.el (gnus-agent-expire): Don't sort lines.
+
+Tue Jun 30 15:56:31 1998 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-agent.el (gnus-agent-expire): Use a fresh hash table.
+
+Mon Jun 29 22:49:49 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.22 is released.
+
+Mon Jun 29 21:22:46 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-salt.el (gnus-pick-mode-map): Remove gnus-mouse.
+
+ * gnus-sum.el (gnus-dependencies-add-header): `debug' left in.
+ Eh. Eh.
+
+ * gnus-salt.el (gnus-summary-pick-line-format): Missing %.-
+
+ * gnus-topic.el (gnus-topic-rename): Fix error message.
+
+Sun Jun 28 14:32:08 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-spec.el (gnus-face-face-function): Double quoting removed.
+
+Sun Jun 28 09:54:52 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.21 is released.
+
+Sun Jun 28 08:51:39 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-edit-article-done): Copy the buffer to
+ a temp buffer before replacing.
+
+ * gnus-msg.el (gnus-post-news): Treat broken-reply-to in
+ followups.
+
+ * gnus-sum.el (gnus-summary-goto-subject): Position point.
+
+Sat Jun 27 09:19:20 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-demon.el (gnus-util): Required.
+
+ * gnus-score.el (gnus-score-body): Message fix.
+
+ * gnus-group.el (gnus-group-highlight-line): Use it.
+
+ * gnus-util.el
+ (gnus-put-text-properties-excluding-characters-with-faces): New
+ function.
+
+Sat Jun 27 08:56:08 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.20 is released.
+
+Sat Jun 27 08:49:51 1998 Arne Georg Gleditsch <argggh@ifi.uio.no>
+
+ * gnus-sum.el (gnus-parent-headers): Check better for headers.
+
+Sat Jun 27 08:45:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-check-news-body-syntax): Buggy checksum
+ check.
+
+Sat Jun 27 07:59:22 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.19 is released.
+
+Sat Jun 27 07:50:50 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.18 is released.
+
+Sat Jun 27 03:18:57 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-soup.el (gnus-soup-save-areas): Made interactive.
+
+ * nnfolder.el (nnfolder-request-replace-article): Check all X-From
+ headers.
+
+ * gnus-sum.el (gnus-update-marks): Don't nix out cache lists.
+
+ * nngateway.el (nngateway-mail2news-header-transformation):
+ Changed semantics.
+
+ * message.el (message-check-news-body-syntax): Don't look at
+ buffer size to see whether text has been added.
+
+Fri Jun 26 15:46:05 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.16 is released.
+
+Fri Jun 26 15:36:25 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-delete-assq): Removed.
+ (gnus-delete-assoc): Ditto.
+
+ * gnus.el: Use throughout.
+
+ * gnus-util.el (gnus-pull): New macro.
+
+1998-06-26 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-sum.el (gnus-get-newsgroup-headers): parse Chars: headers
+
+Fri Jun 26 13:45:24 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-update-marks): Use it.
+
+ * gnus-util.el (gnus-delete-alist): New function.
+
+ * gnus-sum.el (gnus-update-marks): Don't save list of cached
+ articles.
+
+ * message.el (message-mode-menu): Include kill-buffer.
+
+ * nnmail.el (nnmail-purge-split-history): Use it.
+
+ * gnus-util.el (gnus-delete-if): New function.
+
+ * nnmail.el (nnmail-article-group): Use gnus-remove-duplicates.
+
+Fri Jun 26 13:45:09 1998 Richard Stallman <rms@santafe.edu>
+
+ * gnus-util.el (gnus-remove-duplicates): New function.
+
+Fri Jun 26 13:30:42 1998 Kevin Christian <Kevin.Christian@symbios.com>
+
+ * gnus-score.el (gnus-score-string): Do updating of scores after
+ fuzzies.
+
+Fri Jun 26 07:26:03 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-mode): Don't do the intern dance.
+
+Fri Jun 26 07:13:49 1998 Richard Stallman <rms@santafe.edu>
+
+ * message.el (message-mode): Adaptive fill changes.
+
+Fri Jun 26 04:29:44 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-mode-line-format-alist): Allow article
+ score.
+
+ * gnus-score.el (gnus-score-load-file): Would ignore all score
+ files without un-advanced rules.
+
+ * gnus-ems.el ((fboundp 'split-string)): Use it where it exists.
+
+Fri Jun 26 04:23:12 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.15 is released.
+
+Fri Jun 26 03:39:32 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnfolder.el (nnfolder-request-replace-article): Delete old
+ delimiter.
+
+ * gnus-msg.el (gnus-summary-reply): Use it.
+
+ * message.el (message-reply): Removed parameter.
+ (message-wide-reply): Ditto.
+
+ * gnus-msg.el (gnus-msg-treat-broken-reply-to): New function.
+
+ * gnus-art.el (gnus-check-group-server): New function.
+ (gnus-request-article-this-buffer): Don't try to waken the server
+ before needing to.
+
+Thu Jun 25 10:35:48 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-delete-article): Sort the articles
+ before deleting.
+
+ * nngateway.el (nngateway-request-post): Return success.
+
+ * nnheader.el (nnheader-insert-file-contents): Bind more hooks.
+
+ * gnus-sum.el (gnus-summary-limit-to-age): Reverse logic.
+
+ * gnus-score.el (gnus-summary-score-entry): Removed interactive
+ spec.
+ ((gnus-summary-score-map "V" gnus-summary-mode-map)): Removed
+ keystroke.
+
+ * gnus-art.el (gnus-article-show-summary): Position point.
+
+ * gnus-cache.el (gnus-cache-update-article): Change group first.
+
+ * gnus.el (gnus-short-group-name): Collapse more.
+
+Thu Jun 25 08:48:06 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.14 is released.
+
+Thu Jun 25 05:13:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-rebuild-thread): Accept a line argument.
+ (gnus-rebuild-thread): Would skip around a lot when `P'-ing past
+ the beginning.
+
+ * gnus-msg.el (gnus-post-method): Present all known servers if
+ `C-u 0'.
+
+ * gnus-salt.el (gnus-pick-mode-map): Reinstated keymap.
+
+ * gnus-sum.el (gnus-build-sparse-threads): Put the proper date
+ in.
+
+Wed Jun 24 07:52:30 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.13 is released.
+
+Wed Jun 24 07:47:04 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-topic.el (gnus-topic-rename): Disallow "nil".
+
+Wed Jun 24 07:33:17 1998 Vladimir Alexiev <vladimir@cs.ualberta.ca>
+
+ * nnvirtual.el (nnvirtual-update-xref-header): Regexp-quote group
+ name.
+
+Wed Jun 24 06:15:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-build-sparse-threads): Give all the sparse
+ articles the date of the current child.
+
+ * gnus-topic.el (gnus-group-topic-parameters): Didn't compute.
+
+Wed Jun 24 03:27:44 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.12 is released.
+
+Wed Jun 10 11:06:35 1998 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de>
+
+ * message.el (message-mail-other-window): Bind message-this-is-mail.
+ (message-mail-other-frame): Likewise.
+ (message-news-other-window): Bind message-this-is-news.
+ (message-news-other-frame): Likewise.
+
+1998-06-09 Sam Steingold <sds@goems.com>
+
+ * gnus-uu.el (gnus-uu-default-view-rules): make sed kill ^M only
+ at the end of line.
+
+1998-06-05 Hrvoje Niksic <hniksic@srce.hr>
+
+ * nnmail.el (nnmail-get-split-group): Don't regexp-quote
+ nnmail-procmail-suffix.
+
+Wed Jun 24 03:04:05 1998 Kim-Minh Kaplan <kaplan@sky.fr>
+
+ * gnus-sum.el (gnus-build-get-header): Fix obarray.
+
+Wed Jun 24 02:49:57 1998 Castor <castor@my-dejanews.com>
+
+ * nntp.el (nntp-open-ssl-stream):
+
+Wed Jun 24 02:31:46 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-nov-parse-line): Cleaned up.
+ (gnus-build-all-threads): Put things in the wrong obarray.
+
+Wed Jun 24 01:43:26 1998 Decklin Foster <djarum@base.org>
+
+ * nngateway.el (nngateway-mail2news-header-transformation): New
+ function.
+
+Wed Jun 24 00:25:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-shorten-references): New function.
+ (message-header-format-alist): Use it.
+
+ * gnus-start.el (gnus-always-read-dribble-file): Customized.
+
+ * message.el (message-generate-new-buffers): Dox fox.
+
+Tue Jun 23 23:58:48 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-topic.el (gnus-topic-prepare-topic): Respect visible topic
+ param.
+ (gnus-topic-hierarchical-parameters): New function.
+
+1998-06-02 Didier Verna <verna@inf.enst.fr>
+
+ * gnus-picon.el (gnus-get-buffer-name): use get-buffer-create
+ instead of get-buffer
+
+Wed Jun 3 04:41:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnkiboze.el (nnkiboze-request-delete-group): Delete .newsrc
+ file.
+
+ * nnmail.el (nnmail-article-group): Nuke looong lines.
+
+ * gnus-art.el (gnus-button-alist): Buggy default.
+
+Wed Jun 3 04:03:37 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.11 is released.
+
+Wed Jun 3 03:33:50 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el: Checked doc string syntax throughout.
+
+ * message.el (message-subject-re-regexp): Renamed.
+
+Wed Jun 3 03:33:05 1998 Simon Josefsson <jas@pdc.kth.se>
+
+ * message.el (message-ignored-subject-re): New variable.
+
+Wed Jun 3 03:25:13 1998 Sam Steingold <sds@usa.net>
+
+ * gnus-msg.el (gnus-bug-create-help-buffer): New variable.
+ (gnus-bug): Use it.
+
+1998-05-07 Hrvoje Niksic <hniksic@srce.hr>
+
+ * nnmail.el: (nnmail-get-split-group): Use `regexp-quote'
+ when file name is a part of pattern.
+
+ * nnmail.el (nnmail-crosspost-link-function): Ditto.
+
+ * gnus-ems.el: Use `symbol-name' instead of `(format "%s" ...)'.
+
+ * gnus-score.el (gnus-score-load-file): Use `regexp-quote'
+ when file name is a part of pattern.
+
+1998-05-06 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus-cache.el (gnus-cache-generate-active): Use `regexp-quote'
+ when file name is a part of pattern.
+
+Wed Jun 3 03:13:34 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnfolder.el (nnfolder-delete-mail): Changed parameters.
+ (nnfolder-request-replace-article): Rename X-From-Line.
+
+Wed Jun 3 03:10:04 1998 Dan Christensen <jdc@chow.mat.jhu.edu>
+
+ * nnfolder.el (nnfolder-adjust-min-active): Work.
+
+Mon Jun 1 05:27:28 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-limit-to-age): Reversed time and
+ almost collapsed space!
+
+ * nnmail.el (nnmail-days-to-time): Computed wrong time.
+
+Mon Jun 1 05:19:46 1998 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-sum.el (gnus-dependencies-add-header): Break loops.
+
+Mon Jun 1 05:13:34 1998 Fabrice POPINEAU <popineau@esemetz.ese-metz.fr>
+
+ * gnus-cache.el (gnus-cache-generate-active): Regexp-quote.
+
+Mon Jun 1 04:31:23 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.10 is released.
+
+Mon Jun 1 03:25:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-button-alist): Recognize bare mailto buttons
+ for Gnus.
+
+ * nntp.el: Replaced all `message' calls.
+
+Mon Jun 1 03:13:46 1998 Wolfgang Rupprecht <wolfgang@dailyplanet.wsrcc.com>
+
+ * nntp.el (nntp-encode-text): Removed spurious forward-line.
+
+Sat May 23 19:44:43 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-fetch-session): Would infloop if
+ opening failed.
+
+Tue May 19 04:11:33 1998 Yoshiki Hayashi <g740685@komaba.ecc.u-tokyo.ac.jp>
+
+ * nnheader.el (nnheader-translate-file-chars): Don't change
+ string.
+
+Tue May 19 03:07:45 1998 P. E. Jareth Hein <jareth@camelot-soft.com>
+
+ * gnus-util.el (gnus-dd-mmm): New version.
+
+Tue May 19 03:00:39 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el: Changed address.
+
+Tue May 12 06:12:42 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire): Delete more.
+
+Sun May 10 19:08:28 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-group.el (gnus-group-read-ephemeral-group): Don't add
+ `address'.
+
+Sun May 3 18:01:01 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-within-headers-p): Renamed.
+
+ * message.el (message-cancel-news): If a Sender header doesn't
+ exist, compare From against `message-make-from'.
+
+Sun May 3 15:07:25 1998 Lars Balker Rasmussen <lbr@image.dk>
+
+ * gnus-agent.el (gnus-agent-save-group-info): Fix
+ re-search-forward params.
+
+Sun May 3 15:04:02 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire): Check for the size.
+
+Sat May 2 01:50:20 1998 Dan Christensen <jdc@chow.mat.jhu.edu>
+
+ * nnfolder.el (nnfolder-goto-article): New version.
+ (nnfolder-read-folder): Fix.
+
+ * nnmail.el (nnmail-within-headers): New function.
+
+Sat May 2 01:36:37 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnfolder.el (nnfolder-goto-article): Thinkotypo search arguments.
+
+ * nnheader.el (nnheader-find-file-noselect): Also bind
+ `find-file-hooks' to nil.
+
+ * nnmail.el (nnmail-process-unix-mail-format): Don't use
+ `find-file-noselect'.
+
+ * gnus-group.el (gnus-group-make-menu-bar): Typo.
+
+Fri May 1 21:59:35 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.9 is released.
+
+Fri May 1 21:54:30 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnfolder.el (nnfolder-goto-article): Would infloop.
+
+Fri May 1 19:45:50 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.8 is released.
+
+Fri May 1 18:51:21 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-request-newgroups): Use format-time-string.
+
+ * message.el (message-fetch-field): Inhibit point-motion hooks.
+
+Fri May 1 18:33:06 1998 Wes Hardaker <wjhardaker@ucdavis.edu>
+
+ * gnus-score.el (gnus-adaptive-word-no-group-words): New variable.
+
+Fri May 1 16:56:32 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire): Put point at the start of the
+ buffer.
+
+ * gnus-soup.el (gnus-soup-parse-areas): Check whether the file
+ exists.
+
+ * gnus-draft.el (gnus-draft-send): Use meta-information.
+
+ * nnagent.el (nnagent-request-post): Store meta-information.
+
+ * gnus-agent.el (gnus-agent-meta-information-header): New variable.
+ (gnus-agent-insert-meta-information): New function.
+
+Fri May 1 16:43:35 1998 Paul Franklin <paul@cs.washington.edu>
+
+ * message.el (message-generate-headers): Insert Sender when
+ required.
+
+Fri May 1 15:28:55 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-dd-mmm): Accept "" dates.
+
+ * gnus-cite.el (gnus-article-hide-citation): Don't remove button
+ when hiding.
+
+ * gnus-msg.el (gnus-post-method): Allow ARG to override
+ `current'.
+
+ * gnus-sum.el (gnus-remove-thread): Remove the dummy root
+ properly.
+
+ * nnfolder.el (nnfolder-goto-article): New function.
+ (nnfolder-retrieve-headers): Use it.
+ (nnfolder-request-article): Ditto.
+
+Wed Apr 29 22:48:33 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.7 is released.
+
+Wed Apr 29 20:54:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-update-info): Bind
+ gnuis-newsgroup-scored later.
+ (gnus-summary-prepare-threads): Check some more before inserting
+ dummy roots.
+
+ * gnus-cache.el (gnus-cache-enter-article): Update marks
+ properly.
+
+ * gnus-xmas.el (gnus-xmas-draft-menu-add): New function.
+
+ * nntp.el (nntp-connection-timeout): Removed.
+
+ * gnus-move.el (gnus-move-group-to-server): Delete nils.
+
+ * nntp.el (nntp-close-server): Close more connections.
+
+ * gnus-art.el (gnus-button-alist): Accept white space after colons
+ in <URL:news:> things.
+
+Wed Apr 29 20:18:45 1998 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-art.el (article-update-date-lapsed): Bind
+ `deactivate-mark'.
+
+ * gnus-salt.el (gnus-pick-mode-map): Moved keys around to avoid
+ shadowing.
+
+ * gnus-art.el (gnus-article-read-summary-keys): New version.
+
+ * gnus-sum.el (gnus-summary-make-menu-bar): New for article mode.
+
+ * gnus-msg.el (gnus-post-method): `current' custom.
+
+Wed Apr 29 19:04:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-set-local-parameters): Ignore
+ quit-config.
+ (gnus-select-newsgroup): Use the value of gnus-fetch-old-headers.
+
+ * message.el (message-post-method): Doc fix.
+
+ * gnus.el (gnus-directory): dox fix.
+
+Tue Apr 28 03:32:17 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-group.el (gnus-group-timestamp): Really get timestamp.
+
+ * gnus.el (gnus-group-parameter-value): Use explicit iteration.
+
+Tue Apr 28 03:15:50 1998 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * gnus-util.el (gnus-alive-p): Check for binding.
+
+Tue Apr 28 03:00:16 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-parent-headers): Don't infloop on nil
+ References.
+
+ * gnus-art.el (gnus-article-mode): Don't kill local vars.
+
+ * score-mode.el (score-mode-syntax-table): Change syntax.
+
+Mon Apr 27 00:26:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.6 is released.
+
+Mon Apr 27 00:07:11 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-request-article-this-buffer): Viewing pseudos
+ in nneething groups bugged.
+
+ * gnus-sum.el (gnus-summary-prepare-threads): Dummy roots and
+ dormants and stuff.
+
+Sun Apr 26 23:34:40 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-cache.el (gnus-cache-file-name): Use FULL.
+
+ * nnheader.el (nnheader-translate-file-chars): Allow FULL
+ parameter.
+
+ * gnus-cache.el (gnus-cache-file-name): Translate all colons.
+
+Sun Apr 26 19:27:56 1998 Justin Sheehy <justin@linus.mitre.org>
+
+ * nntp.el (nntp-rlogin-parameters): Doc fix.
+
+Sun Apr 26 19:21:12 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-summary-save-in-mail): Not a command.
+
+Sun Apr 26 19:16:03 1998 James Troup <J.J.Troup@scm.brad.ac.uk>
+
+ * gnus-sum.el (gnus-summary-expire-articles-now): Work.
+
+Sun Apr 26 14:34:06 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-build-sparse-threads): Break loops.
+ (gnus-summary-print-article): Save excursion to try to preserve
+ local/bound variable messup.
+
+ * gnus-salt.el (gnus-tree-read-summary-keys): Put point in article
+ buffer.
+
+ * gnus-undo.el (gnus-undo): New group.
+ (gnus-undo-limit): New variable.
+ (gnus-undo-register-1): Use it.
+
+ * gnus-sum.el (gnus-summary-update-info): Don't nix out scores.
+
+ * gnus-start.el (gnus-active-to-gnus-format): Removed "." from
+ quoting.
+
+ * gnus.el (gnus-cache-directory): Moved here.
+ (gnus-predefined-server-alist): Use.
+
+ * message.el (message-autosave-directory): Put back in.
+ (message-set-auto-save-file-name): Use if Gnus isn't running.
+
+ * gnus-util.el (gnus-alive-p): Moved here.
+
+ * message.el (message-autosave-directory): Removed.
+ (message-set-auto-save-file-name): Don't use it.
+
+ * gnus.el: Use gnus-buffer-exists-p throughout.
+
+ * gnus-uu.el (gnus-uu-save-article): Use gnus-kill-buffer.
+
+ * message.el (message-make-in-reply-to): Check more for strange
+ From lines.
+
+ * gnus-art.el (gnus-article-mode): Don't nix out vars.
+
+Sun Apr 26 14:05:40 1998 Frank Bennett <bennett@rumple.soas.ac.uk>
+
+ * nnmail.el (nnmail-move-inbox): Push error'ed mailboxes onto the
+ list.
+
+Sun Apr 26 13:01:53 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-score-save): Use it.
+
+ * score-mode.el (score-mode-syntax-table): New table.
+
+ * nnmbox.el: Commentary fix.
+
+Sun Apr 26 12:59:00 1998 Richard Stallman <rms@santafe.edu>
+
+ * message.el (message-mode): New adaptive fill defaults.
+
+Sun Apr 26 12:50:38 1998 Jim Radford <radford@robby.caltech.edu>
+
+ * gnus-start.el (gnus-active-to-gnus-format): Groups that start
+ with dots.
+
+1998-04-11 Richard Stallman <rms@sucrose.gnu.org>
+
+ * gnus/gnus-art.el (gnus-emphasis-alist): Use nth, not caddr.
+
+Sat Apr 25 15:33:57 1998 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-sum.el (gnus-build-sparse-threads): Handle loops.
+
+Sat Apr 25 15:09:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-valid-select-methods): nngateway is post-mail.
+
+Fri Apr 24 21:32:14 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.5 is released.
+
+Fri Apr 24 21:19:21 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el (gnus-post-method): Doc fix.
+ (gnus-post-method): Reversed semantics.
+
+1998-04-01 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * gnus-msg.el (gnus-post-method): Customized. Added 'native
+ option. In the function, added support for new value.
+
+Fri Apr 24 20:04:15 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmbox.el (nnmbox-request-create-group): New function.
+
+Sun Apr 12 07:55:16 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-save-group-info): Only do those that
+ are covered.
+
+Tue Apr 7 11:26:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-authinfo-file): Doc fix.
+
+1998-03-31 Ken Raeburn <raeburn@cygnus.com>
+
+ * nnml.el (nnml-request-expire-articles): Sort active-articles,
+ then only expire the intersection of that set with the requested
+ articles.
+
+Wed Apr 1 16:01:44 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-supersede): Check Sender.
+ (message-cancel-news): Fix Sender check.
+
+Sun Mar 29 11:54:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnkiboze.el (nnkiboze-generate-group): Would mess up newsrs
+ hashtb.
+ (nnkiboze-enter-nov): Created bogus Xrefs headers.
+
+ * gnus-agent.el (gnus-agent-save-group-info): New function.
+
+ * gnus-start.el (gnus-get-unread-articles): Use it.
+
+ * message.el (message-expand-group): Allow completion from in the
+ middle of strings.
+ (message-font-lock-keywords): Work when mail-header-separator is
+ "".
+
+Sun Mar 29 09:56:00 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.4 is released.
+
+Sun Mar 29 09:47:58 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnkiboze.el (nnkiboze-request-delete-group): Would bug out when
+ deleting files.
+
+Sat Mar 28 08:48:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-encode-text): Use `nntp-end-of-line'.
+
+Thu Mar 26 15:29:51 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire): Check size of history file.
+
+ * message.el (message-mode): Doc fix.
+
+Mon Mar 23 14:21:34 1998 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * gnus-score.el (gnus-score-default-type): Doc fix.
+
+Mon Mar 23 14:12:01 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-int.el (gnus-request-body): Do the same as HEAD.
+
+ * gnus-art.el (gnus-article-edit-article-hook): Removed.
+
+Mon Mar 23 14:09:56 1998 jari aalto <jari.aalto@poboxes.com>
+
+ * gnus-art.el (gnus-article-edit-article-hook): New hook.
+
+1998-03-19 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * nntp.el (nntp-open-rlogin): Wrap in save-excursion
+
+Thu Mar 19 16:43:59 1998 Joe Buehler <jhpb@hekimian.com>
+
+ * gnus-util.el (gnus-date-iso8601): Use simple string.
+
+Thu Mar 19 15:18:00 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.3 is released.
+
+Thu Mar 19 15:09:14 1998 Wes Hardaker <wjhardaker@ucdavis.edu>
+
+ * gnus-win.el (gnus-delete-windows-in-gnusey-frames): Make sure
+ there are no nil buffers.
+
+1998-03-17 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus-uu.el (gnus-uu-digest-headers): Add `Content-Type' and
+ `Content-Transfer-Encoding'.
+
+1998-03-18 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * message.el (message-header-lines): Added `:format'.
+
+1998-03-18 Simon Josefsson <jas@pdc.kth.se>
+
+ * nndoc.el: dummy request-accept-article
+
+Thu Mar 19 14:10:25 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-next-subject): Expand threads.
+
+ * gnus-agent.el (gnus-agent-group-mode-hook,
+ gnus-agent-summary-mode-hook): New variables.
+ (gnus-agent-mode): Run them.
+
+1998-03-14 SL Baur <steve@altair.xemacs.org>
+
+ * gnus-xmas.el (gnus-xmas-group-startup-message): Tell gnus-start
+ we've already drawn the pretty Gnu graphic.
+
+Thu Mar 19 12:44:12 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el: Would use nil group names.
+
+ * nntp.el (nntp-send-authinfo): Send authinfo to "force"d
+ servers.
+
+ * gnus-util.el (gnus-parse-netrc): Accept the "force" token.
+
+ * message.el (message-cancel-news): Compare Sender header, not
+ From header.
+
+Tue Mar 17 15:07:18 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (article-hide-headers): Fold case.
+
+Sat Mar 14 17:57:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-horizontal-recenter): New window-end may
+ return nil.
+
+Fri Mar 13 22:12:30 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-fetch-session): Check whether server
+ is up before fetching.
+
+ * gnus-win.el (gnus-window-frame-focus): New variable.
+ (gnus-configure-windows): Use it.
+
+ * gnus-sum.el (gnus-summary-catchup-and-exit): Don't select next
+ when in an ephemeral group.
+
+ * gnus-agent.el (gnus-agent-expire): Message end.
+ (gnus-agent-expire-all): New variable.
+ (gnus-agent-expire): Use it.
+
+Fri Mar 13 22:07:17 1998 Shenghuo ZHU <zsh@cs.rochester.edu>
+
+ * gnus-agent.el (gnus-agent-high-scored-p): Wrong value.
+
+Fri Mar 13 21:10:24 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnvirtual.el (nnvirtual-request-group): Force updating of info.
+
+Sun Mar 8 20:46:51 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-delete-incoming): Changed default.
+
+Sun Mar 8 14:05:25 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.2 is released.
+
+Sun Mar 8 00:35:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-picon.el (gnus-get-buffer-name): Look in the assoc for the
+ variable.
+
+ * nntp.el (nntp-wait-for): Check more for dead connections.
+
+ * gnus-eform.el (gnus-edit-form-buffer): Moved back here.
+
+ * gnus-win.el (gnus-window-to-buffer-helper): Return nil when
+ buffers don't exist.
+
+ * nndraft.el (nndraft-request-restore-buffer): Remove Xref header,
+ not Xrefs.
+
+Sun Mar 8 00:00:04 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Gnus v5.6.1 is released.
+
+Sat Mar 7 22:15:46 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-edit-form-buffer): Moved here.
+
+ * gnus-agent.el (gnus-agent-expire-old): Removed.
+ (gnus-agent-expire-directory): Ditto.
+ (gnus-agent-expire-group): Even more ditto.
+
+Sat Mar 7 21:59:18 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.37 is released.
+
+Sat Mar 7 20:10:42 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-expire-days): New variable.
+ (gnus-agent-expire): New function.
+
+Sat Mar 7 17:35:53 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.36 is released.
+
+Sat Mar 7 17:29:20 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-wait-for): Reversed logic.
+
+Sat Mar 7 17:19:04 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.35 is released.
+
+Sat Mar 7 15:01:57 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-picon.el (gnus-picons-x-face-sentinel): Check whether
+ gnus-picons-x-face-file-name exists.
+
+ * gnus-art.el (gnus-article-read-summary-keys): Move window point
+ in the summary buffer.
+
+ * nndoc.el (nndoc-type-alist): Allow spaces around separator.
+
+ * gnus-sum.el (gnus-summary-edit-parameters): Interactive.
+
+Sat Mar 7 15:00:05 1998 Wes Hardaker <wjhardaker@ucdavis.edu>
+
+ * gnus-art.el (gnus-article-prepare): Mark articles as
+ downloadable.
+
+Wed Mar 4 22:33:27 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * gnus-int.el (gnus-get-function): New version, caches symbol
+ names.
+
+Fri Mar 6 01:10:22 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * nnml.el (nnml-article-to-file): Build pathname using
+ expand-file-name. (Thanks, Colin Rafferty, for catching
+ this.)
+
+Sat Feb 28 23:33:40 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * nnml.el (nnml-article-to-file): Don't add extra "/" when
+ building pathname.
+
+ * nnheader.el (nnheader-file-to-number): Check value of
+ nnheader-numerical-short-files instead of checking if jka-compr is
+ loaded.
+
+1998-03-03 Dave Love <d.love@dl.ac.uk>
+
+ * nnheader.el (nnheader-parse-head): Fix in-reply-to code. Return
+ nil consistently if not found.
+
+Sat Mar 7 13:50:44 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el: Check whether the connection died.
+
+1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus.texi (Easy Picons): Removed references to
+ `gnus-group-display-picons'.
+ (Hard Picons): Ditto.
+
+Mon Mar 2 16:17:36 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-exit-no-update): Run
+ gnus-summary-prepare-exit-hook here as well.
+
+Sat Feb 28 13:35:26 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-authinforc-file): Changed default.
+ (nntp-authinfo-file): Changed name.
+ (nntp-record-commands): New variable.
+ (nntp-record-command): New function.
+
+ * gnus-agent.el (gnus-agent-group-path): Use real name of group.
+
+ * gnus-sum.el (gnus-summary-insert-subject): Don't allow nil
+ articles.
+ (gnus-summary-read-group): Respect backward movement.
+
+1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-win.el (gnus-window-to-buffer): change "*Picons*" to
+ `gnus-picons-buffer'.
+ (gnus-window-to-buffer-helper): Support dynamic picon buffer
+ name (i.e a symbol that names a function to be called).
+ (gnus-configure-frame): Use it.
+ (gnus-delete-windows-in-gnusey-frames): Use it.
+ (gnus-all-windows-visible-p): Use it.
+ (gnus-remove-some-windows): Use it.
+
+ * gnus-picon.el (gnus-get-buffer-name): Use it.
+ (gnus-picons-kill-buffer): New function.
+ (gnus-picons-setup-buffer): New function.
+ (gnus-picons-set-buffer): Use them.
+ (gnus-picons-display-x-face): Put back the `buf' binding: it is
+ needed when `gnus-picons-display-where' is not set to article.
+ Also move the X-Face to the left, near the address. It seems more
+ logical.
+
+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.
+
+Mon Feb 23 17:48:42 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-cite.el (gnus-article-hide-citation-maybe): Wrong
+ interactive specs.
+ (gnus-cite-toggle): Maybe parse.
+
+Mon Feb 23 05:26:11 1998 Rui-Tao Dong ~{6-HpLN~} <rdong@internetmci.com>
+
+ * nnweb.el (nnweb-type-definition): Fixed.
+
+Sun Feb 22 18:10:53 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-group-path): Translate right chars.
+ (gnus-agent-toggle-plugged): Allow proper closing.
+
+ * gnus-srvr.el (gnus-browse-read-group): Allow entering
+ non-ephemeral groups.
+
+Sun Feb 22 04:21:15 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.31 is released.
+
+Sun Feb 22 02:09:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-highlight): Give undownloaded marks a
+ better face.
+
+ * gnus-score.el (gnus-score-set): Take optional "warn".
+ (gnus-summary-score-entry): Use it.
+
+ * gnus.el: Removed spurious * in defcustoms.
+
+ * gnus-score.el (gnus-score-load-file): Reverse logic.
+
+ * gnus-cite.el (gnus-article-hide-citation): Use markers to make
+ things work when wrapping.
+
+ * gnus-sum.el (gnus-summary-exit): Stop prefetch.
+
+Sat Feb 21 02:12:42 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-get-newsgroup-headers): Buggy regexp.
+
+Sat Feb 21 00:51:22 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.30 is released.
+
+Sat Feb 21 00:09:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-mark-article): Don't do anything if
+ the mark doesn't change.
+
+ * gnus-art.el (gnus-article-prepare): Don't enter article into
+ cache.
+
+ * gnus-sum.el (gnus-summary-reparent-thread): Don't mark as read.
+ (gnus-summary-mark-article): Don't do cache things here.
+
+ * gnus-util.el (gnus-parse-netrc): Skip past macdefs.
+
+Fri Feb 20 22:56:22 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-srvr.el (gnus-browse-unsubscribe-group): Wouldn't allow
+ unsubscription.
+
+ * gnus-sum.el (gnus-summary-insert-subject): Allow inserting
+ articles outside limits.
+
+ * gnus-start.el (gnus-dribble-enter): Update mode line.
+
+ * gnus-srvr.el (gnus-browse-unsubscribe-group): Allow
+ unsubscription.
+
+ * gnus-picon.el (gnus-article-display-picons): Check that the
+ extents are live first.
+
+Thu Feb 19 15:13:44 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-group.el (gnus-useful-groups): Include gnus-bug.
+
+Thu Feb 19 02:28:17 1998 Jens-Ulrik Holger Petersen <petersen@kurims.kyoto-u.ac.jp>
+
+ * gnus.el (gnus-group-history): Defined twice.
+
+Thu Feb 19 01:58:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-get-newsgroup-headers): Just use the header
+ value.
+ (gnus-summary-exit): Set global vars.
+
+Tue Feb 17 07:17:49 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-stop-page-breaking): Mark page as no
+ longer broken.
+ (gnus-summary-exit): Purge the real name.
+
+Tue Feb 17 07:00:43 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.29 is released.
+
+Tue Feb 17 06:15:03 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-purge-split-history): List of alists, not
+ alist.
+
+Mon Feb 16 20:22:04 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.28 is released.
+
+1998-02-16 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-dont-send): Make sure the article really is
+ saved.
+
+ * nnmail.el (nnmail-purge-split-history): Alist; not a list of
+ alists.
+
+1998-02-16 Hrvoje Niksic <hniksic@srce.hr>
+
+ * message.el (message-kill-to-signature): Do the right thing when
+ there is no signature.
+
+1998-02-16 Hrvoje Niksic <hniksic@srce.hr>
+
+ * message.el (message-elide-elipsis): Add type and group.
+ (message-elide-region): Docfix.
+
+1998-02-16 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-run-hooks): Use unwind-protect instead of
+ save-excursion.
+
+1998-02-16 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * nntp.el (nntp-authinforc-file): Customized.
+
+Mon Feb 16 03:18:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-nocem.el (gnus-nocem-unwanted-article-p): Don't look if the
+ hashtable doesn't exist.
+
+ * gnus-start.el (gnus-ask-server-for-new-groups): Make sure the
+ killed groups hashtable exists.
+
+Sun Feb 15 23:02:11 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-authinforc-file): Changed name and default.
+ (nntp-send-authinfo): Use it.
+
+Sun Feb 15 19:50:10 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.27 is released.
+
+Sun Feb 15 19:41:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-ephemeral-servers): New variable.
+ * gnus-srvr.el (gnus-server-prepare): Use it.
+ * gnus-group.el (gnus-group-read-ephemeral-group): Ditto.
+
+Sun Feb 15 19:35:11 1998 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-art.el (gnus-article-read-summary-keys): Go to top on
+ some.
+
+Sun Feb 15 19:26:21 1998 SeokChan LEE <chan@xfer.kren.nm.kr>
+
+ * message.el (message-ignored-supersedes-headers): Fix.
+
+Sun Feb 15 18:39:15 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-salt.el (gnus-tree-close): Start killing buffer again.
+
+ * gnus-sum.el (gnus-mark-article-as-read): Return t.
+
+ * gnus-art.el (gnus-article-edit-mode): Run text mode hook.
+
+Sun Feb 15 17:31:19 1998 Roland Roberts <rroberts@muller.com>
+
+ * gnus-sum.el (gnus-nov-parse-line): Would bug out on bogus
+ References headers.
+
+Sun Feb 15 14:23:51 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-article-current-summary): New variable.
+ (gnus-article-mode): Make it local.
+
+ * gnus-score.el (gnus-summary-increase-score): Find the right
+ global score file.
+
+ * gnus-start.el (gnus-setup-news): Don't find new newsgroups
+ unless plugged.
+
+ * message.el (message-mode): Set font-lock things before running
+ mode hook.
+
+ * gnus-agent.el (gnus-agent-group-path): Respect long file names.
+
+Sat Feb 14 21:31:25 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-goto-last-article): Force jumping to
+ articles outside limit.
+
+ * gnus-agent.el (gnus-agent-toggle-plugged): un/plug before hook.
+
+Sat Feb 14 21:08:03 1998 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-xmas.el (gnus-xmas-article-display-xface): t t would make
+ faces disappear.
+
+Sat Feb 14 20:52:34 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-netrc-file): New variable.
+
+Sat Feb 14 19:28:01 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.26 is released.
+
+Sat Feb 14 18:40:55 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-directory): Translate file chars.
+
+ * gnus-sum.el (gnus-summary-print-article): Don't display all
+ headers.
+ (gnus-summary-edit-parameters): New command and keystroke.
+
+ * gnus-group.el (gnus-group-rename-group): Mark dribble.
+
+Sat Feb 14 18:39:45 1998 Fred Oberhauser <foberhauser@psipenta.de>
+
+ * nnmail.el (nnmail-process-babyl-mail-format): Fix point
+ movement.
+
+Sat Feb 14 18:31:39 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-group-get-parameter): Dix fix.
+
+Sat Feb 14 18:29:12 1998 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-picon.el: Updated documentation.
+
+Sat Feb 14 18:26:53 1998 Joev Dubach <dubach@dcepea.harvard.edu>
+
+ * nntp.el (nntp-send-authinfo-from-file): Doc fix.
+
+Sun Jan 11 23:44:12 1998 Ken Raeburn <raeburn@cygnus.com>
+
+ * nnagent.el (nnagent-request-update-info): New no-op fn.
+
+Sat Feb 14 17:41:44 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-srvr.el (gnus-browse-unsubscribe-group): Wouldn't allow
+ subscription of visited groups.
+
+ * gnus-util.el (gnus-run-hooks): New function.
+ Use it everywhere.
+
+ * nntp.el (nntp-authinfo-password): New variable.
+ (nntp-send-authinfo): Cache authinfo password.
+
+ * gnus-sum.el (gnus-summary-mark-article-as-unread): Don't do
+ anything if the mark doesn't change.
+
+1998-01-17 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus-sum.el (gnus-summary-work-articles): change buffer
+ before looking at marked articles
+ (gnus-summary-work-articles): better check of marked articles
+
+Sat Feb 14 15:10:36 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-send-authinfo): Use new .netrc functionality.
+
+ * gnus-util.el (gnus-netrc-syntax-table): New variable.
+ (gnus-parse-netrc): New function.
+ (gnus-netrc-machine): Ditto.
+ (gnus-netrc-get): Ditto.
+
+ * gnus-draft.el (gnus-draft-make-menu-bar): Added deletion.
+
+ * gnus.el (gnus-expert-user): Dix fox.
+
+ * nnmail.el (nnmail-article-group): Remove duplicates from split.
+
+ * message.el (message-check-news-header-syntax): Check more on
+ Message-ID.
+
+ * nnmh.el: Don't call nnmail-activate.
+
+ * gnus.el: User-variabelize all custom vars.
+
+Fri Feb 13 22:40:39 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.25 is released.
+
+Fri Feb 13 19:01:19 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndoc.el (nndoc-type-alist): Allow blank lines to separate
+ headers from bodies.
+
+ * gnus-art.el (gnus-article-edit): Restore Date header.
+
+ * gnus-async.el (gnus-asynch-obarray): New variable.
+ (gnus-async-prefetched-article-entry): Use it.
+ (gnus-async-set-buffer): Use it.
+
+ * nnmh.el (nnmh-active-number): Create parent dirs.
+
+ * nntp.el (nntp-last-command): New variable.
+ (nntp-handle-authinfo): New function.
+
+ * gnus-sum.el (gnus-summary-exit): Call purging function.
+
+Fri Feb 13 18:59:16 1998 François Pinard <pinard@iro.umontreal.ca>
+
+ * nnmail.el (nnmail-get-new-mail): Don't clear split-history.
+ (nnmail-purge-split-history): New function.
+
+Fri Feb 13 18:36:16 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nntp.el (nntp-telnet-shell-prompt): Renamed.
+
+Fri Feb 13 18:35:23 1998 Sam Falkner <samf@channelpoint.com>
+
+ * nntp.el (nntp-open-telnet-envuser): New variable.
+
+Fri Feb 13 18:29:23 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-send-mail-function): Added smtpmail-send-it.
+
+1998-02-11 Dave Love <d.love@dl.ac.uk>
+
+ * gnus-art.el (gnus-button-url): Don't lose in Emacs 20 with
+ browse-url-browser-function an alist, not a function.
+ (gnus-button-embedded-url): Likewise.
+
+Fri Feb 13 17:10:31 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-cite.el (gnus-cite-localize): New function.
+ (gnus-cite-close): Renamed.
+ (gnus-cite-parse-maybe): Use it.
+
+ * gnus-sum.el (gnus-summary-move-article): Move back to summary
+ buffer.
+
+ * nnfolder.el (nnfolder-request-accept-article): Save excursion.
+ (nnfolder-request-move-article): Ditto.
+
+ * nntp.el (nntp-find-connection): Don't message.
+
+Fri Feb 13 14:51:56 1998 MORIOKA Tomohiko <steve@xemacs.org>
+
+ * message.el (message-send-mail-with-qmail): Fix.
+
+1998-02-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus-draft.el (gnus-draft-make-menu-bar): Added missing commands.
+
+1998-01-06 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus/gnus-cus.el (gnus-score-parameters): Make `files' and
+ `exclude-files' widgets inline.
+
+Fri Feb 13 12:46:23 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-article-mark): Dox dox.
+
+Wed Feb 11 15:05:03 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.24 is released.
+
+Tue Feb 10 21:59:53 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-fetch-session): Reversed reversal.
+
+ * gnus-topic.el (gnus-topic-rename): Check whether the new name
+ exists.
+
+Tue Feb 10 21:39:47 1998 dave edmondson <dme@sco.com>
+
+ * message.el (message-font-lock-keywords): Allow : as a citation
+ ending.
+
+Tue Feb 10 20:09:02 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-send): Removed dead code.
+
+Mon Feb 9 17:02:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-fill-header): Fill to column 990.
+
+ * gnus-score.el (gnus-score-load-file): Exclude all excluded
+ files.
+
+Mon Feb 9 16:55:41 1998 jari aalto <jari.aalto@poboxes.com>
+
+ * gnus-art.el (gnus-article-time-format): Extended variable.
+
+Mon Feb 9 16:27:59 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (article-make-date-line): Make 8601 Dates.
+ (article-date-iso8601): New command and keystroke.
+
+Sun Feb 8 21:19:15 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-ignored-mail-headers): Remove Xrefs.
+
+ * nndoc.el (nndoc-open-document-hook): New variable.
+
+Sun Feb 8 21:01:33 1998 Istvan Marko <istvan@cmdmail.amd.com>
+
+ * gnus-agent.el (gnus-unplugged): Typo fix.
+
+Sun Feb 8 18:34:31 1998 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-score.el (gnus-score-thread-simplify): New variable.
+
+Sun Feb 8 18:31:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-uu.el (gnus-uu-post-encode-mime): Call mmencode with
+ correct params.
+
+Sun Feb 8 18:13:58 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.23 is released.
+
+Sun Feb 8 17:20:40 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-group.el (gnus-update-group-mark-positions): Bind `topic'.
+
+ * message.el (message-expand-group): Added doc string.
+
+ * nntp.el (nntp-wait-for): Don't change limit until after
+ accepting output.
+
+Sun Feb 8 16:44:36 1998 Richard Hoskins <rmh@interlaced.net>
+
+ * message.el (message-kill-to-signature): Don't kill the
+ delimiter.
+
+Sun Feb 8 16:15:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-prepared-hook): New hook.
+ (gnus-summary-read-group-1): Use it.
+
+ * message.el (message-cite-original-without-signature): New
+ function.
+ (message-cite-function): Added to custom.
+
+1998-01-13 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus/message.el (message-cite-original): Don't quote signature.
+
+Sun Feb 8 15:50:20 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-group.el (gnus-group-unsubscribe-group): Protest against
+ empty group names.
+
+Mon Feb 2 18:56:22 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-draft.el (gnus-draft-setup): Associate with drafts group.
+
+ * message.el (message-header-format-alist): Fill references.
+
+ * gnus-agent.el (gnus-category-read): Changed default.
+ (gnus-agent-handle-level): New variable.
+ (gnus-agent-fetch-session): Use it.
+
+ * gnus-art.el (article-strip-all-blank-lines): New command and
+ keystroke.
+
+Sun Feb 1 18:00:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el (gnus-inews-reject-message): Removed function.
+ (gnus-sent-message-ids-file): Removed.
+ (gnus-sent-message-ids-length): Ditto.
+
+ * gnus-xmas.el (gnus-xmas-summary-set-display-table): Ditto.
+
+ * gnus-sum.el (gnus-simplify-subject-fuzzy): Respect
+ `gnus-simplify-ignored-prefixes'.
+ (gnus-summary-set-display-table): Keep TAB.
+
+Thu Jan 15 22:47:38 1998 <Use-Author-Address-Header@[127.1]>
+
+ * gnus-art.el (gnus-request-article-this-buffer): Put it into the
+ backlog.
+
+Mon Jan 12 23:30:59 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-get-newsgroup-headers): Use the longest ID.
+
+ * nnheader.el (nnheader-parse-head): Ditto.
+
+Thu Jan 8 09:47:18 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-1): Use gnus-alive-p.
+
+Tue Jan 6 11:53:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-article-prepare): Bind coding systems.
+
+Tue Jan 6 07:45:39 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.22 is released.
+
+Tue Jan 6 07:32:02 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-kill-to-signature): Don't use mark.
+
+Tue Jan 6 07:30:46 1998 Russ Allbery <rra@stanford.edu>
+
+ * message.el (message-kill-to-signature): New command and keystroke.
+
+Tue Jan 6 06:39:29 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-print-article): New defaults for
+ headers and stuff.
+
+ * gnus-agent.el (gnus-agent-batch): New command.
+
+ * nnoo.el (nnoo-execute): Copy vars from parent into child.
+ (nnoo-parent-function): Ditto.
+
+ * gnus-draft.el (gnus-draft-setup): Removed message.
+
+ * gnus-start.el (gnus-read-descriptions-file): Naked muleism.
+
+Mon Jan 5 05:20:16 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnml.el (nnml-generate-nov-databases-1): Fix lower bound on
+ empty groups.
+
+Sun Jan 4 14:38:36 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.21 is released.
+
+Sun Jan 4 14:28:35 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.20 is released.
+
+1997-12-10 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus/gnus-msg.el (gnus-inews-insert-mime-headers): Added
+ documentation.
+ (gnus-inews-insert-mime-headers): Made it work with Emacs MULE.
+ (gnus-inews-insert-mime-headers): Added as option to
+ `message-header-hook'.
+
+1997-12-22 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus/gnus-art.el (gnus-button-alist): Assume msg-id after "in
+ message".
+
+1997-12-22 Simon Josefsson <jas@faun.nada.kth.se>
+
+ * nnmail.el (nnmail-get-new-mail): Make nnmail-tmp-directory
+
+1997-12-28 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * gnus/gnus-group.el (gnus-group-fetch-faq): Convert `.' in group
+ name to `/'.
+
+Sun Jan 4 13:35:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndraft.el (nndraft-request-associate-buffer): Open the damn
+ server first. Sheesh.
+
+ * gnus-draft.el (gnus-draft-send): Bind message-send-hook to nil.
+
+ * gnus-sum.el (gnus-summary-catchup): Don't nix out downloadable.
+ (gnus-summary-highlight): Highlight down/un as unread.
+
+Sun Jan 4 13:27:31 1998 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus-start.el (gnus-strip-killed-list): Fix syntax.
+
+Sun Jan 4 13:18:04 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnsoup.el (nnsoup-store-reply): Bind mail-header-separator to
+ "".
+
+ * gnus-xmas.el (gnus-xmas-agent-server-menu-add): New.
+
+ * nnoo.el (nnoo-change-server): Get the right values.
+
+1998-01-04 Aki Vehtari <Aki.Vehtari@hut.fi>
+
+ * gnus-art.el (gnus-signature-limit): Add default values for
+ choices suggested by Per Abrahamsen <abraham@dina.kvl.dk>.
+ (gnus-prompt-before-saving): Add :value t for sexp tag.
+ (gnus-split-methods): Add default values for choices.
+
+ * gnus-score.el (gnus-home-score-file): Add non-nil default for
+ function.
+ (gnus-home-adapt-file): Ditto.
+
+ * gnus-sum.el (gnus-move-split-methods): Add default values for
+ choices.
+
+ * nnmail.el (nnmail-list-identifiers): Add default values for
+ choices suggested by Per Abrahamsen <abraham@dina.kvl.dk>.
+
+Sun Jan 4 11:31:42 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.19 is released.
+
+Sun Jan 4 10:42:53 1998 Felix Lee <flee@teleport.com>
+
+ * nntp.el (nntp-open-rlogin): Use a list of parameters.
+
+Sun Jan 4 10:25:05 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-fetch-groups): New command.
+
+ * gnus-sum.el (gnus-summary-print-article): Changed order of
+ parameters.
+
+Sun Jan 4 10:24:07 1998 Michael R. Cook <mcook@cognex.com>
+
+ * gnus-sum.el (gnus-summary-print-article): Use process/prefix.
+
+Sun Jan 4 05:29:38 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-uu.el: Changed spurious defconsts to defvars.
+
+ * nnmail.el (nnmail-get-spool-files): Quote group name.
+
+ * gnus-agent.el (gnus-agent-fetch-group-1): Fetch ticked articles.
+ (gnus-agent-fetch-group-1): Never mind.
+
+Sat Dec 20 22:33:17 1997 Pete Ware <ware@cis.ohio-state.edu>
+
+ * message.el (message-rename-buffer): Check for nil dirs.
+
+Fri Dec 19 21:45:59 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnml.el (nnml-request-create-group): Check for files.
+
+Fri Dec 19 21:39:43 1997 Hrvoje Niksic <hniksic@srce.hr>
+
+ * message.el (message-mode): Fixed font-lock.
+
+Fri Dec 19 21:26:08 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-cache.el (gnus-cache-read-active): Check for empty files.
+
+Sun Dec 14 11:46:50 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-uu.el (gnus-uu-save-article): Quote all lines beginning
+ with a dash.
+
+1997-12-10 SL Baur <steve@altair.xemacs.org>
+
+ * gnus-start.el (gnus-read-descriptions-file): Really bind and gag
+ Mule.
+
+Fri Dec 5 15:15:05 1997 Danny Siu <dsiu@adobe.com>
+
+ * nndoc.el (nndoc-babyl-body-begin): quote the regexp for the
+ string "*** EOOH ***" properly.
+ (nndoc-babyl-head-begin): Same as above.
+
+Sun Dec 14 11:11:22 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-uu.el (gnus-uu-pre-uudecode-hook): New hook.
+
+ * gnus-sum.el (gnus-summary-read-group-1): Set mode line after
+ configuring.
+
+Sun Dec 14 11:03:26 1997 Wes Hardaker <wjhardaker@ucdavis.edu>
+
+ * gnus-score.el (gnus-adaptive-word-minimum): New variable.
+ (gnus-score-adaptive): Use it.
+
+Sun Dec 14 09:19:18 1997 Roland B. Roberts <roberts@panix.com>
+
+ * gnus-group.el: Fixed hardcoded levels.
+
+Sat Dec 6 17:40:33 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.18 is released.
+
+Sat Dec 6 17:27:04 1997 Kim-Minh Kaplan <KimMinh.Kaplan@Utopia.EUnet.fr>
+
+ * gnus-picon.el (gnus-picons-remove): Race condition.
+
+Sat Dec 6 17:23:26 1997 Christian von Roques <roques@scalar.pond.sub.org>
+
+ * gnus-start.el (gnus-read-descriptions-file): Fix
+ enable-multibyte-characters.
+
+1997-12-05 Dave Love <d.love@dl.ac.uk>
+
+ * gnus-nocem.el (gnus-nocem-message-wanted-p): Fix paren typpo.
+ (gnus-nocem-issuers): Allow sexp alternative in :type for alists.
+
+1997-12-05 Dave Love <d.love@dl.ac.uk>
+
+ * gnus-art.el (gnus-visible-headers): Add X-sent:.
+
+Sat Dec 6 17:16:28 1997 Lars Balker Rasmussen <lbr@mjolner.dk>
+
+ * gnus-art.el (article-make-date-line): Don't add extra newlines.
+
+1997-11-27 MORIOKA Tomohiko <morioka@jaist.ac.jp>
+
+ * nnmail.el (nnmail-file-coding-system): Use `raw-text' in
+ default.
+
+ * nnheader.el (nnheader-file-coding-system): Use `raw-text' in
+ default.
+
+Sat Dec 6 17:04:40 1997 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * nnml.el (nnml-parse-head): Out-of-bounds fix.
+
+ * nndraft.el (nndraft-request-associate-buffer): Get proper file
+ name.
+
+Sat Dec 6 15:35:37 1997 Gary D. Foster <Gary.Foster@Corp.Sun.COM>
+
+ * gnus-group.el: Added backspace.
+
+Thu Nov 27 19:56:59 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-summary-set-agent-mark): Remove marks
+ properly.
+
+1997-11-27 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * smiley.el (smiley-buffer): Provide `help-echo'.
+
+Thu Nov 27 17:33:45 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-output-to-rmail): Always save buffer.
+
+ * nntp.el (nntp-close-server): Don't sleep for me, Argentina.
+ (nntp-request-close): You neither.
+
+1997-11-19 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * message.el (message-header-lines): New widget.
+ (message-default-headers): Use it.
+ (message-default-mail-headers): Use it.
+ (message-default-news-headers): Use it.
+
+1997-11-24 Andreas Jaeger <aj@arthur.rhein-neckar.de>
+
+ * gnus-start.el (gnus-read-descriptions-file): Add missing quote.
+
+Wed Nov 26 18:19:29 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnweb.el (nnweb-type-definition): Rescued dejanewsold.
+
+ * gnus-mh.el (gnus-summary-save-in-folder): Reverted to old
+ version.
+
+ * gnus-sum.el (gnus-kill-or-deaden-summary): Save excursion.
+
+ * gnus.el: Only require gnus-load in Emacsen 19.
+
+ * gnus-start.el (gnus-setup-news): Always push archive server.
+
+ * gnus-sum.el (gnus-read-header): Would bug out on sparse
+ articles.
+
+Wed Nov 26 17:50:41 1997 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-ems.el (gnus-mule-cite-add-face): Work.
+
+Wed Nov 26 17:40:57 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.17 is released.
+
+Wed Nov 26 16:04:25 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-move-article): Don't work on canceled
+ articles.
+
+ * gnus-start.el (gnus-subscribe-hierarchical-interactive): Use
+ `read-char-exclusive'.
+
+ * gnus-sum.el (gnus-summary-mode): Localize
+ gnus-summary-dummy-line-format.
+
+ * nnml.el (nnml-open-nov): Check that the file exists before
+ inserting it.
+
+ * gnus-art.el (article-date-ut): Insert a newline if needed.
+
+ * gnus-score.el (gnus-score-edit-current-scores): Protect against
+ nil score files.
+
+ * gnus-start.el (gnus-newsrc-parse-options): Be more correct --
+ match only hierarchies.
+ (gnus-gnus-to-quick-newsrc-format): Changed warning.
+
+Wed Nov 26 15:47:40 1997 Greg Klanderman <greg@alphatech.com>
+
+ * messagexmas.el (message-xmas-maybe-fontify): New definition.
+
+Wed Nov 26 15:43:53 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-setup-news): Protect against nil
+ gnus-message-archive-method.
+
+1997-11-26 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * gnus-art.el (gnus-article-edit-done): Update headers "Lines:",
+ "Content-Length:" and "X-Content-Length:" when present.
+
+Wed Nov 26 15:08:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-process-unix-mail-format): Pop to the right
+ buffer on error.
+ (nnmail-process-mmdf-mail-format): Ditto.
+
+Wed Nov 26 13:54:04 1997 Joe Reiss <jreiss@sprynet.com>
+
+ * gnus-art.el (gnus-summary-save-in-rmail): Return the name of the
+ file.
+
+Wed Nov 26 13:50:01 1997 Alastair Burt <alastair.burt@dfki.de>
+
+ * smiley.el: Balloon help, etc.
+
+Wed Nov 26 13:45:35 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-util.el (gnus-kill-all-overlays): Remove check for XEmacs.
+
+1997-09-30 Dave Love <d.love@dl.ac.uk>
+
+ * message.el: Don't require rmail.
+
+Wed Nov 26 13:37:50 1997 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-group.el (gnus-group-setup-buffer): set-buffer.
+
+Wed Nov 26 13:31:54 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-score-load-file): Don't create empty score
+ files when doing decays.
+
+Wed Nov 26 13:28:04 1997 Renaud Rioboo <rioboo@calfor.lip6.fr>
+
+ * nnmail.el (nnmail-move-inbox): Only bind default-directory when
+ calling external function.
+
+Wed Nov 26 13:03:45 1997 IWAMURO Motonori <iwa@mmp.fujitsu.co.jp>
+
+ * gnus-kill.el (gnus-batch-score): Newsrc thinko.
+
+Wed Nov 26 10:31:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnheader.el (nnheader-parse-head): Would break on Message-ID's
+ that spanned several lines.
+
+ * gnus-util.el (gnus-date-iso8601): Didn't pick out the date
+ header.
+
+ * gnus-demon.el (gnus-demon-scan-mail): Clean inboxes.
+
+1997-11-25 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * gnus-picon.el (gnus-picons-x-face-sentinel): Would bug out in
+ headers with two X-Face lines.
+
+Wed Nov 26 08:54:26 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-update-info): Would use wrong group
+ name.
+
+1997-11-26 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus-spec.el (gnus-compile): Avoid multiple `c*addr's.
+ (gnus-compile): Require `bytecomp'.
+
+1997-11-25 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus-util.el (gnus-prin1): Bind `print-readably' to t.
+
+ * gnus-xmas.el (gnus-xmas-kill-all-overlays): New function.
+ (gnus-xmas-define): Use it.
+
+ * gnus-art.el (gnus-stop-date-timer): Use `nnheader-cancel-timer'.
+
+ * message.el (message-header-lines): Specify format.
+
+ * gnus-xmas.el (gnus-xmas-move-overlay): Use BUFFER.
+ (gnus-byte-code): Use `indirect-function'.
+
+ * gnus-cite.el (gnus-cite-add-face): Would assign free variable.
+
+Wed Nov 26 08:31:28 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-stop-date-timer): Cancel instead of delete.
+ (gnus-start-date-timer): Use the numerical prefix.
+
+Tue Nov 25 20:03:34 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-draft.el (gnus-group-send-drafts): Activate group first.
+
+Tue Nov 25 19:57:55 1997 Dan Christensen <jdc@chow.mat.jhu.edu>
+
+ * gnus-group.el (gnus-group-process-prefix): Skip topics.
+
+Tue Nov 25 19:54:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-move.el (gnus-move-group-to-server): Protect agains
+ nil-ness.
+
+Tue Nov 25 19:03:38 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.16 is released.
+
+Tue Nov 25 16:05:01 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-read-header): Remove thread entry before
+ rebuilding.
+
+ * gnus-cite.el (gnus-cite-add-face): Keep track of all overlays.
+
+ * gnus-art.el (article-update-date-lapsed): New function.
+ (gnus-start-date-timer): New command.
+ (article-date-ut): Put the face in the right place.
+ (article-date-ut): Would move around.
+
+ * gnus-group.el (gnus-group-read-ephemeral-group): Accept server
+ names.
+
+ * gnus-srvr.el (gnus-browse-foreign-server): Use proper server
+ names.
+
+ * gnus.el (gnus-group-prefixed-name): Give the right result for
+ native groups.
+
+ * nnheader.el (nnheader-directory-files): New function.
+
+ * nnmh.el (nnmh-request-list-1): Reversed check.
+
+ * nnfolder.el (nnfolder-delete-mail): Would skip backwards one
+ line too much.
+
+Tue Nov 25 14:44:02 1997 SeokChan LEE <chan@xfer.kren.nm.kr>
+
+ * message.el (message-ignored-supersedes-headers): Typo.
+
+Mon Nov 24 18:46:37 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.15 is released.
+
+Mon Nov 24 18:07:21 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-ems.el: Also check major version names.
+
+1997-10-05 SL Baur <steve@altair.xemacs.org>
+
+ * message.el (require 'rmail): Put guard around.
+ * nnbabyl.el (require 'rmail): Ditto.
+
+Mon Nov 24 17:36:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-reply): Respect Mail-Copies-To even when
+ `to-address'.
+
+Mon Nov 24 17:32:47 1997 Thor Kristoffersen <thor@unik.no>
+
+ * nntp.el (nntp-request-close): Sleep one second.
+
+Mon Nov 24 16:18:19 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-read-group-1): Update marks when not
+ entering group.
+
+ * gnus-start.el (gnus-setup-news): Get correct value of archive
+ server.
+
+Wed Oct 8 20:29:35 1997 Robert Bihlmeyer <robbe@orcus.priv.at>
+
+ * message.el (message-make-organization): Don't let the
+ environment variable override a user-set organization.
+
+Mon Nov 24 14:09:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnml.el (nnml-open-nov): Don't use find-file.
+
+ * gnus-sum.el (gnus-last-newsgroup-variables-set): New variable.
+ (gnus-set-global-variables): Don't do to much; gets run off of
+ pre-command-hook.
+ Got rid of gnus-set-global-variables throughout.
+ (gnus-summary-exit): Update adaptive scoring here.
+ (gnus-summary-isearch-article): Widen.
+
+ * nnml.el (nnml-parse-head): Work in empty buffers.
+
+1997-10-14 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus-xmas.el (gnus-xmas-group-startup-message): Check for image
+ formats correctly.
+ (gnus-xmas-modeline-glyph): Ditto.
+
+Mon Nov 24 13:58:12 1997 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus-spec.el (gnus-compile): Work under XEmacs.
+
+Mon Nov 24 07:15:45 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnoo.el (nnoo-change-server): Push the right parent packend onto
+ the alist.
+
+Sun Nov 23 16:21:41 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.14 is released.
+
+Sun Nov 23 14:04:07 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-read-descriptions-file): Make sure Mule is
+ bound. And gagged.
+
+ * message.el (message-send-mail-with-mh): Use
+ `mh-new-draft-name'.
+
+ * nnfolder.el (nnfolder-read-folder): Save new buffers.
+
+ * gnus-sum.el (gnus-summary-make-menu-bar): Removed "write to
+ file".
+
+ * gnus-util.el (gnus-byte-code): Use indirect-function.
+
+ * nntp.el (nntp-open-telnet): Also accept 201.
+
+ * gnus-sum.el (gnus-summary-reparent-thread): Update thread.
+
+ * gnus-score.el (gnus-all-score-files): Don't do anything unless
+ GROUP.
+
+ * nnmail.el (nnmail-split-it): Save-excursion.
+ (nnmail-group-pathname): Translate file chars.
+
+Sun Nov 23 13:41:10 1997 Gunnar Horrigmo <horrigmo@online.no>
+
+ * gnus-sum.el (gnus-summary-exit): Don't skip if group
+ disappeared.
+
+Sun Nov 23 13:32:55 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnfolder.el (nnfolder-normalize-buffer): New function.
+ (nnfolder-save-mail): Use it.
+ (nnfolder-request-replace-article): Ditto.
+
+1997-11-19 Per Abrahamsen <abraham@dina.kvl.dk>
+
+ * message.el (message-header-lines): New widget.
+ (message-default-headers): Use it.
+ (message-default-mail-headers): Use it.
+ (message-default-news-headers): Use it.
+
+Sun Nov 23 12:44:38 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-win.el (gnus-remove-some-windows): Also delete dead summary
+ windows.
+
+ * gnus-score.el (gnus-score-adaptive): Check whether functions are
+ bound.
+
+Sun Nov 23 12:15:00 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * gnus-sum.el (gnus-summary-limit-include-thread): Interactive
+ fix.
+
+Sun Nov 23 07:06:58 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-reparent-thread): Insert Message-ID in
+ proper place.
+
+Sat Nov 22 18:30:33 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-cus.el (gnus-group-parameters): Add visible.
+
+Sat Nov 22 18:19:39 1997 Kim-Minh Kaplan <kkaplan@lpthe.jussieu.fr>
+
+ * message.el (message-setup): Add a newline, if necessary.
+
+Sat Nov 22 18:04:34 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-mh.el (gnus-summary-save-in-folder): Fix for default.
+
+Sat Nov 22 18:01:26 1997 Didier Verna <verna@inf.enst.fr>
+
+ * gnus-sum.el (gnus-summary-remove-bookmark): Interactive spec.
+
+Mon Nov 17 23:50:51 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (article-display-x-face): Fold case.
+
+Thu Nov 13 22:57:23 1997 Kenichi Handa <handa@etl.go.jp>
+
+ * gnus/gnus-start.el (gnus-read-descriptions-file): Decode
+ description if necessary.
+
+ * gnus/nntp.el (nntp-coding-system-for-read): Set default value to
+ binary.
+ (nntp-coding-system-for-write): Likewise.
+
+Thu Nov 13 22:30:19 1997 seokchan lee <chan@xfer.kren.nm.kr>
+
+ * message.el (message-ignored-supersedes-headers): Ignore more
+ headers.
+
+Thu Nov 13 22:28:13 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-separator-face): Lightened up.
+ (message-header-other-face): Ditto.
+
+Thu Nov 13 22:22:11 1997 jari aalto <jari.aalto@poboxes.com>
+
+ * nnmail.el (nnmail-process-mmdf-mail-format): Pop to buffer.
+
+Thu Nov 13 22:09:39 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-start-draft-setup): Always create group.
+
+ * gnus-agent.el (gnus-agent-fetch-headers): Translate file chars.
+
+Thu Nov 6 20:43:05 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.13 is released.
+
+Thu Nov 6 20:30:14 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnlistserv.el: New backend.
+
+Thu Nov 6 01:53:51 1997 Stefan Waldherr <swa@cs.cmu.edu>
+
+ * nnweb.el (nnweb-dejanewsold-search): New function.
+
+Thu Nov 6 01:52:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-topic.el (gnus-topic-change-level): Really delete multiple
+ instances.
+
+Wed Nov 5 14:04:54 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-topic.el (gnus-topic-update-topic-line): Possibly fix nil
+ numbers.
+
+ * gnus-sum.el (gnus-summary-show-article): New command and
+ keystroke.
+
+Tue Nov 4 06:29:58 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-score-adaptive): Use the home score file.
+
+Sat Oct 25 05:52:22 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-article-save): Hide headers in the right
+ buffer.
+
+ * gnus-picon.el (gnus-picons-xbm-face): New face.
+
+Sat Oct 25 00:39:42 1997 Lars Balker Rasmussen <lbr@mjolner.dk>
+
+ * gnus-art.el (gnus-article-fill-paragraph): New command and
+ keystroke.
+
+1997-10-16 Colin Rafferty <craffert@ml.com>
+
+ * message.el (message-make-fqdn): Made certain that user-mail is
+ not nil.
+
+Sat Oct 25 00:18:32 1997 David S. Goldberg <dsg@linus.mitre.org>
+
+ * gnus-art.el (article-hide-boring-headers): Use many-to.
+
+Fri Oct 24 23:48:39 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-picon.el (gnus-picons-display-pairs): Don't add two bars.
+ (gnus-picons-try-face): Set the foreground color on the bar.
+ (gnus-picons-group-exluded-groups): New variable.
+ (gnus-group-display-picons): Use it.
+
+Mon Oct 13 00:01:35 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-group-path): Translate file chars.
+ (gnus-agent-batch-fetch): New command.
+ (gnus-agent-fetch-group): Message.
+
+Sun Oct 12 23:54:55 1997 ISO-2022-JP <ichikawa@hv.epson.co.jp>
+
+ * gnus-agent.el (gnus-agent-article-file-coding-system): New
+ variable.
+
+Sun Oct 12 16:46:11 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * dgnushack.el (lpath): Reversed.
+
+ * gnus-msg.el (gnus-summary-cancel-article): Use sym prefix.
+
+ * gnus-art.el (article-translate-characters): New function.
+ (article-treat-dumbquotes): New command and keystroke.
+
+Sun Oct 5 20:09:31 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-button-alist): No ' and " in News:.
+
+ * gnus-msg.el (gnus-inews-insert-archive-gcc): Comp warn.
+
+Sat Oct 4 00:53:55 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.12 is released.
+
+Sat Oct 4 00:16:39 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-plugged): Moved here.
+
+ * nnmail.el (nnmail-delete-incoming): Changed default to nil.
+
+ * gnus-int.el (gnus-request-scan): Don't do anything if
+ unplugged.
+
+Fri Oct 3 21:09:19 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-art.el (gnus-ignored-headers): Doc fix.
+
+ * gnus-demon.el (gnus-demon-add-nntp-close-connection): New
+ function.
+ (gnus-demon-nntp-close-connection): Ditto.
+
+ * nntp.el (nntp-last-command-time): New variable.
+ (nntp-retrieve-data): Use it.
+
+ * message.el (message-news-p): Messages with Posted-To aren't
+ news.
+ (message-mode): Heed message-yank-prefix when filling.
+
+ * nndraft.el (nndraft-request-restore-buffer): Remove Xrefs and
+ Lines headers.
+
+ * nntp.el (nntp-encode-text): Encode according to RFC977.
+
+Wed Oct 1 18:27:26 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el (gnus-inews-insert-archive-gcc): gcc-self didn't
+ work if `gnus-message-archive-method' was nil.
+
+ * nnmail.el (nnmail-article-group): Allow \\1 substitution.
+
+Sat Sep 27 12:57:44 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-salt.el (gnus-pick-mouse-pick-region): Use it.
+
+ * gnus-xmas.el (gnus-xmas-window-edges): New function.
+
+ * gnus-score.el (gnus-score-edit-current-scores): Don't select
+ window.
+
+Sat Sep 27 12:52:31 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * messcompat.el ((boundp 'mail-mode-hook)): Check.
+
+Sat Sep 27 09:22:15 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndraft.el (nndraft-possibly-change-group): Always open server.
+
+ * gnus-sum.el (gnus-summary-pop-article): Force.
+
+ * gnus-art.el (gnus-article-prepare): Push the article onto the
+ history.
+
+ * gnus-sum.el (gnus-summary-pop-article): Pop to the right
+ article.
+
+ * gnus-demon.el (gnus-demon-scan-news): Save excursion.
+
+Sat Sep 27 09:06:55 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * gnus-cache.el (gnus-summary-limit-include-cached): New command
+ and keystroke.
+
+Sat Sep 27 06:45:58 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-uu.el (gnus-uu-invert-processable): Make interactive.
+
+Sat Sep 27 06:43:38 1997 Kim-Minh Kaplan <kimminh.kaplan@utopia.eunet.fr>
+
+ * gnus-picon.el: Doc fixes.
+
+1997-09-23 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus.el: Removed definition of `custom-face-lookup'.
+
+Sat Sep 27 05:36:11 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndraft.el: Would block nnmh.
+
+ * gnus-sum.el (gnus-mark-article-as-unread): Don't allow marking
+ negative articles.
+
+ * gnus-group.el (gnus-fetch-group): Use `gnus-no-server'.
+
+ * gnus-agent.el (gnus-agent-with-fetch): Moved.
+
+ * gnus-sum.el (gnus-nov-read-integer): Really skip to next field.
+
+Sat Sep 27 04:32:45 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.11 is released.
+
+Sat Sep 27 03:50:12 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.el (message-send): Post without asking.
+ (message-mode): Modify paragraphs-start and paragraph-separate.
+ (message-newline-and-reformat): New command and keystroke.
+
+Thu Sep 25 00:13:41 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmail.el (nnmail-activate): Init server buffer.
+
+Wed Sep 24 04:11:59 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-draft.el (gnus-draft-setup): Inexplicable binding problem
+ worked around.
+
+ * nnsoup.el (nnsoup-always-save): Renamed.
+
+Wed Sep 24 04:11:02 1997 Nelson Jose dos Santos Ferreira <Nelson.Ferreira@inesc.pt>
+
+ * nnsoup.el (nnsoup-commit-reply-now): New variable.
+ (nnsoup-store-reply): Use it.
+
+Wed Sep 24 02:30:44 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-ems.el (gnus-deactivate-mark): New alias.
+
+Tue Sep 23 07:56:07 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el: Win-away!
+
+ * gnus-msg.el (gnus-setup-message): Don't trust make-symbol.
+
+Tue Sep 23 07:45:11 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.10 is released.
+
+Tue Sep 23 01:41:04 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-read-all-headers): New function.
+ (gnus-select-newsgroup): Use it.
+ (gnus-summary-refer-thread): Ditto.
+ (gnus-refer-thread-limit): New variable.
+ (gnus-summary-refer-thread): Use it.
+
+ * gnus-nocem.el (gnus-nocem-message-wanted-p): New function.
+ (gnus-nocem-check-article): Use it.
+ (gnus-nocem-issuers): Dox ofx.
+
+ * dgnushack.el (dgnushack-compile): Check for cus-edit.
+
+ * message.el (message-included-forward-headers): Include Mime
+ headers.
+ (message-send): Allow posting without confirming from Agent.
+
+Mon Sep 22 05:43:14 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * dgnushack.el (byte-compile-warnings): Don't warn about obsolete
+ variables.
+
+ * gnus-sum.el (gnus-summary-refer-thread): New command and
+ keystroke.
+ (gnus-summary-limit-include-thread): New command and keystroke.
+ (gnus-summary-articles-in-thread): New function.
+ (gnus-articles-in-thread): Renamed.
+
+Sun Sep 21 23:54:50 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.9 is released.
+
+Sun Sep 21 23:38:46 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.el (gnus-splash-face): ForestGreen everywhere.
+
+ * gnus-sum.el (gnus-simplify-subject-fully): Use new variable.
+ (gnus-general-simplify-subject): Ditto.
+
+Sun Sep 21 23:34:13 1997 Kurt Swanson <kurt@dna.lth.se>
+
+ * gnus-sum.el (gnus-simplify-subject-functions): New variable.
+ (gnus-simplify-whitespace): New function.
+
+ * gnus-util.el (gnus-map-function): New function.
+
+Sun Sep 21 23:22:04 1997 Michelangelo Grigni <mic@mathcs.emory.edu>
+
+ * gnus-score.el (gnus-score-regexp-bad-p): New function.
+
+Sun Sep 21 00:14:40 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-score.el (gnus-summary-lower-score): Use sym pref.
+ (gnus-summary-increase-score): Use it.
+
+ * gnus.el (gnus-current-prefix-symbol): New variable.
+ (gnus-current-prefix-symbols): New variable.
+
+ * gnus-score.el (gnus-summary-increase-score): Take symbolic
+ prefix.
+
+ * gnus.el (gnus-interactive): Removed.
+ (gnus-interactive): Renamed from gnus-interactive-1.
+ (gnus-symbolic-argument): New command.
+
+ * gnus-draft.el (gnus-draft-send-message): Disable message
+ checks.
+ (gnus-draft-send): Ditto.
+ (gnus-draft-setup): Don't save buffer.
+
+ * dgnushack.el (dgnushack-compile): Warn people about Custom.
+
+ * gnus-group.el (gnus-group-iterate): Use gensymmed variables.
+
+ * pop3.el (pop3-md5): `with-temp-buffer' doesn't exist in Emacs
+ 19.34.
+
+ * nneething.el (nneething-directory): Defvarred.
+
+ * message.el: Autoloaded nndraft things.
+ (message-set-auto-save-file-name): Use it.
+
+ * dgnushack.el (dgnushack-compile): Warn about things.
+
+ * gnus-art.el: Autoload w3-region.
+
+ * gnus-vm.el (gnus-summary-save-in-vm): Simplified.
+
+ * gnus.el: Changed `compiled-function-p' to `byte-code-function-p'
+ throughout.
+
+ * gnus-sum.el (gnus-summary-edit-article): Supply additional
+ param.
+
+ * gnus-group.el (gnus-group-iterate): Undo bogus change.
+
+ * gnus-agent.el (gnus-agentize): Just call gnus-open-agent
+ directly.
+
+ * gnus.el (gnus-interactive): New macro.
+ (gnus-interactive-1): New function.
+
+ * gnus-sum.el (gnus-fetch-old-headers): Allow `invisible'.
+ (gnus-cut-thread): Use it.
+ (gnus-cut-threads): Ditto.
+ (gnus-summary-initial-limit): Ditto.
+ (gnus-summary-limit-children): Ditto.
+
+ * gnus-art.el (gnus-article-edit-done): Accept a prefix arg.
+ (gnus-boring-article-headers): Allow `long-to' param.
+ (article-hide-boring-headers): Use it.
+
+ * gnus-sum.el (gnus-summary-edit-article-done): Accept a
+ no-highlight param.
+
+ * nntp.el (nntp-rlogin-program): New variable.
+ (nntp-open-rlogin): Use it.
+
+ * nnvirtual.el (nnvirtual-request-post): New function.
+
+ * gnus-msg.el (gnus-message-group-art): New variable.
+
+ * gnus-draft.el (gnus-draft-setup): Don't use message-setup.
+
+ * nndraft.el (nndraft): Allow editing articles.
+
+ * gnus-ems.el (gnus-x-splash): Ditto.
+
+ * gnus.el (gnus-splash-face): Darker face.
+
+ * gnus-draft.el (gnus-draft-setup): Clobbered variables.
+
+Sat Sep 20 23:23:49 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.8 is released.
+
+Sat Sep 20 20:41:16 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-start.el (gnus-setup-news-hook): New hook.
+
+ * gnus-agent.el (gnus-agentize): Really set up queue group.
+ (gnus-open-agent): Setup queue here.
+
+Sat Sep 20 20:23:07 1997 Matt Simmons <simmonmt@acm.org>
+
+ * message.el (message-set-auto-save-file-name): Make things work
+ without drafts.
+
+Sat Sep 20 18:32:02 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnmh.el (nnmh-request-list-1): Check for links to ".".
+
+ * nndraft.el (nndraft-possibly-change-group): New function.
+
+ * gnus-agent.el (gnus-agent-queue-setup): New function.
+
+Thu Sep 18 04:54:59 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.7 is released.
+
+Thu Sep 18 03:33:54 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-msg.el (gnus-setup-message): Slap a progn around forms.
+
+ * nndraft.el (nndraft-articles): Make sure directory exists.
+
+ * message.el (message-mode): Don't delete article.
+
+ * nnmh.el (nnmh-request-accept-article): Don't save when
+ noinsert.
+
+Wed Sep 17 03:37:59 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndraft.el (nndraft-directory): Changed defaults.
+
+ * gnus-agent.el (gnus-agent-fetch-session): Bind command method.
+
+Wed Sep 17 03:28:36 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.6 is released.
+
+1997-08-17 SL Baur <steve@altair.xemacs.org>
+
+ * dgnushack.el (dgnushack-compile): Ignore .el files beginning
+ with an `=' character.
+
+Wed Sep 17 02:30:04 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-build-sparse-threads): Allow display of looped
+ References.
+
+ * gnus-agent.el (gnus-agent-fetch-group-1): Separated out into
+ function.
+
+ * message.el (message-delete-not-region): New command and
+ keystroke.
+
+Tue Sep 16 00:58:26 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nndraft.el (nndraft-directory): Changed value.
+
+ * message.el (message-kill-buffer): Disassociate draft.
+ (message-mode): Use kill hook to disassociate.
+ (message-disassociate-draft): Double-check.
+
+ * gnus-agent.el (gnus-agentize): Don't set twice.
+
+ * gnus-art.el (gnus-article-prepare): Go to the right line before
+ marking.
+
+ * gnus-start.el: Renamed the drafts group.
+
+ * gnus-agent.el (gnus-agent-lib-file): Changed name of directory.
+
+ * gnus-draft.el (gnus-draft-mode): Simplify.
+
+Tue Sep 16 00:18:11 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.5 is released.
+
+Mon Sep 15 00:53:50 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-alter-header-function): New variable.
+ (gnus-nov-parse-line): Use it.
+ (gnus-get-newsgroup-headers): Ditto.
+
+ * gnus-draft.el (gnus-group-send-drafts): Don't send when
+ unplugged.
+
+ * gnus-sum.el (gnus-summary-read-group): Don't show-all when
+ skipping groups.
+
+ * gnus-start.el (gnus-start-draft-setup): Changed name.
+
+Mon Sep 15 00:40:09 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.4 is released.
+
+Mon Sep 15 00:19:07 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-summary-goto-article): Accept Message-ID's.
+
+Sun Sep 14 21:41:35 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-sum.el (gnus-group-make-articles-read): No params.
+
+ * nndraft.el (nndraft-status-string): Fix.
+
+ * gnus-draft.el (gnus-group-send-drafts): New command.
+
+ * gnus-sum.el (gnus-compute-read-articles): Separated.
+ (gnus-update-read-articles): Allow computation.
+
+ * nndraft.el (nndraft-articles): New function.
+
+ * message.el (message-send): Disabled test.
+
+Sun Sep 14 21:17:34 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+
+ * gnus.el: Quassia Gnus v0.3 is released.
+
+Sun Sep 14 01:51:45 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus-agent.el (gnus-agent-short-article): New variables.
+
+ * message.el (message-set-auto-save-file-name): Use drafts.
+
+ * nndraft.el (nndraft-request-expire-articles): Use it.
+
+ * nnmh.el (nnmh-deletable-article-p): Change.
+ (nnmh-allow-delete-final): New variable.
+
+ * gnus-msg.el (gnus-summary-send-draft): Removed.
+
+ * gnus.el (gnus-article-mark-lists): Save unsendable marks.
+
+ * gnus-sum.el (gnus-newsgroup-unsendable): New variable.
+
+ * gnus-draft.el: New file.
+
+ * gnus-sum.el (gnus-unsendable-mark): New variable.
+
+ * nndraft.el (nndraft-execute-nnmh-command): Cleanup.
+
+ * message.el (message-send-news): Use `gnus-request-post'.
- * qp.el (quoted-printable-decode-region): Don't use hexl.
+ * gnus-agent.el (gnus-agentize): New command.
- * gnus-xmas.el (gnus-xmas-logo-color-style): Changed to dino.
+ * gnus-bcklg.el (gnus-backlog-remove-article): Remove the ident
+ from the list.
- * gnus-sum.el (gnus-parse-headers-hook): Default to nil.
- (gnus-structured-field-decoder): Removed.
- (gnus-unstructured-field-decoder): Ditto.
+Sun Sep 14 00:26:47 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
- * mm-decode.el: New file.
+ * gnus.el: Quassia Gnus v0.2 is released.
- * qp.el: New file.
+Sun Sep 14 00:24:52 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
- * gnus-art.el (article-mime-decode-quoted-printable): Removed.
+ * gnus-score.el (gnus-score-headers): Make sure the summary buffer
+ exists.
- * gnus-ems.el (fboundp): Removed gnus-split-string.
+Sat Sep 13 23:35:28 1997 Greg Stark <gsstark@mit.edu>
- * gnus.el (gnus-splash-face): Doc fix.
+ * gnus-ems.el (gnus-x-splash): New function.
- * gnus-ems.el (fboundp): Don't bind mail-file-babyl-p.
+Sat Sep 13 22:46:16 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
- * gnus-art.el (article-mime-decode-quoted-printable): Don't use
- hexl.
+ * gnus-start.el (gnus-1): Use it.
- * nnheader.el (nnheader-temp-write): Removed.
+ * gnus-ems.el (gnus-decode-coding-string): New alias.
-Sat Aug 29 20:34:17 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * message.el (message-unix-mail-delimiter): Dox fox.
- * gnus.el: Gnus v0.3 is released.
+ * nnmh.el (nnmh-request-list-1): Don't use coding system.
-Sat Aug 29 19:32:06 1998 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus-sum.el (gnus-summary-catchup): Reverse logic.
- * gnus.el: Gnus v0.2 is released.
+Sat Sep 13 21:21:38 1997 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no>
+ * gnus.el: Quassia Gnus v0.1 is released.
(require 'gnus-cache)
(require 'nnvirtual)
(require 'gnus-sum)
-(eval-when-compile (require 'cl)
- (require 'gnus-score))
+(eval-when-compile (require 'cl))
(defcustom gnus-agent-directory (nnheader-concat gnus-directory "agent/")
"Where the Gnus agent will store its files."
;;; Internal variables
+(defvar gnus-agent-meta-information-header "X-Gnus-Agent-Meta-Information")
+
(defvar gnus-agent-history-buffers nil)
(defvar gnus-agent-buffer-alist nil)
(defvar gnus-agent-article-alist nil)
(defvar gnus-agent-send-mail-function nil)
(defvar gnus-agent-article-file-coding-system 'no-conversion)
-(defconst gnus-agent-scoreable-headers
- (list
- "subject" "from" "date" "message-id"
- "references" "chars" "lines" "xref")
- "Headers that are considered when scoring articles
-for download via the Agent.")
-
;; Dynamic variables
(defvar gnus-headers)
(defvar gnus-score)
(defun gnus-agent-read-file (file)
"Load FILE and do a `read' there."
- (with-temp-buffer
+ (nnheader-temp-write nil
(ignore-errors
(nnheader-insert-file-contents file)
(goto-char (point-min))
(defun gnus-agent-write-servers ()
"Write the alist of covered servers."
- (with-temp-file (nnheader-concat gnus-agent-directory "lib/servers")
+ (nnheader-temp-write (nnheader-concat gnus-agent-directory "lib/servers")
(prin1 gnus-agent-covered-methods (current-buffer))))
;;;
(gnus-agent-lib-file "active")
(gnus-agent-lib-file "groups"))))
(gnus-make-directory (file-name-directory file))
- (with-temp-file file
+ (nnheader-temp-write file
(when (file-exists-p file)
(nnheader-insert-file-contents file))
(goto-char (point-min))
(let ((dir (concat
(gnus-agent-directory)
(gnus-agent-group-path group) "/"))
- (date (time-to-day (current-time)))
+ (date (gnus-time-to-day (current-time)))
(case-fold-search t)
pos crosses id elem)
(gnus-make-directory dir)
;; Fetch the articles from the backend.
(if (gnus-check-backend-function 'retrieve-articles group)
(setq pos (gnus-retrieve-articles articles group))
- (with-temp-file nil
+ (nnheader-temp-write nil
(let (article)
(while (setq article (pop articles))
(when (gnus-request-article article group)
nil 'silent)
(pop gnus-agent-buffer-alist))
(while gnus-agent-group-alist
- (with-temp-file (caar gnus-agent-group-alist)
+ (nnheader-temp-write (caar gnus-agent-group-alist)
(princ (cdar gnus-agent-group-alist))
(insert "\n"))
(pop gnus-agent-group-alist))))
(defun gnus-agent-fetch-headers (group &optional force)
(let ((articles (if (gnus-agent-load-alist group)
- (gnus-sorted-intersection
- (gnus-list-of-unread-articles group)
- (gnus-uncompress-range
- (cons (1+ (caar (last gnus-agent-article-alist)))
- (cdr (gnus-active group)))))
- (gnus-list-of-unread-articles group))))
+ (gnus-sorted-intersection
+ (gnus-list-of-unread-articles group)
+ (gnus-uncompress-range
+ (cons (1+ (caar (last gnus-agent-article-alist)))
+ (cdr (gnus-active group)))))
+ (gnus-list-of-unread-articles group))))
;; Fetch them.
(when articles
(gnus-message 7 "Fetching headers for %s..." group)
(save-excursion
- (set-buffer nntp-server-buffer)
- (unless (eq 'nov (gnus-retrieve-headers articles group))
- (nnvirtual-convert-headers))
- ;; Save these headers for later processing.
- (copy-to-buffer gnus-agent-overview-buffer (point-min) (point-max))
- (let (file)
- (when (file-exists-p
- (setq file (gnus-agent-article-name ".overview" group)))
- (gnus-agent-braid-nov group articles file))
- (gnus-make-directory (nnheader-translate-file-chars
- (file-name-directory file)))
- (write-region (point-min) (point-max) file nil 'silent)
- (gnus-agent-save-alist group articles nil)
- (gnus-agent-enter-history
- "last-header-fetched-for-session"
- (list (cons group (nth (- (length articles) 1) articles)))
- (time-to-day (current-time)))
- articles)))))
+ (set-buffer nntp-server-buffer)
+ (unless (eq 'nov (gnus-retrieve-headers articles group))
+ (nnvirtual-convert-headers))
+ ;; Save these headers for later processing.
+ (copy-to-buffer gnus-agent-overview-buffer (point-min) (point-max))
+ (let (file)
+ (when (file-exists-p
+ (setq file (gnus-agent-article-name ".overview" group)))
+ (gnus-agent-braid-nov group articles file))
+ (gnus-make-directory (nnheader-translate-file-chars
+ (file-name-directory file)))
+ (write-region (point-min) (point-max) file nil 'silent)
+ (gnus-agent-save-alist group articles nil)
+ (gnus-agent-enter-history
+ "last-header-fetched-for-session"
+ (list (cons group (nth (- (length articles) 1) articles)))
+ (gnus-time-to-day (current-time)))
+ articles)))))
(defsubst gnus-agent-copy-nov-line (article)
(let (b e)
(defun gnus-agent-save-alist (group &optional articles state dir)
"Save the article-state alist for GROUP."
- (with-temp-file (if dir
- (concat dir ".agentview")
- (gnus-agent-article-name ".agentview" group))
+ (nnheader-temp-write (if dir
+ (concat dir ".agentview")
+ (gnus-agent-article-name ".agentview" group))
(princ (setq gnus-agent-article-alist
(nconc gnus-agent-article-alist
(mapcar (lambda (article) (cons article state))
;; Parse them and see which articles we want to fetch.
(setq gnus-newsgroup-dependencies
(make-vector (length articles) 0))
- ;; No need to call `gnus-get-newsgroup-headers-xover' with
- ;; the entire .overview for group as we still have the just
- ;; downloaded headers in `gnus-agent-overview-buffer'.
- (let ((nntp-server-buffer gnus-agent-overview-buffer))
- (setq gnus-newsgroup-headers
- (gnus-get-newsgroup-headers-xover articles nil nil group)))
+ (setq gnus-newsgroup-headers
+ (gnus-get-newsgroup-headers-xover articles nil nil group))
(setq category (gnus-group-category group))
(setq predicate
(gnus-get-predicate
(or (gnus-group-get-parameter group 'agent-predicate)
(cadr category))))
- ;; Do we want to download everything, or nothing?
- (if (or (eq (caaddr predicate) 'gnus-agent-true)
- (eq (caaddr predicate) 'gnus-agent-false))
- ;; Yes.
- (setq arts (symbol-value
- (cadr (assoc (caaddr predicate)
- '((gnus-agent-true articles)
- (gnus-agent-false nil))))))
- ;; No, we need to decide what we want.
- (setq score-param
- (let ((score-method (or
- (gnus-group-get-parameter group 'agent-score t)
- (caddr category))))
- (when score-method
- (require 'gnus-score)
- (if (eq score-method 'file)
- (let ((entries
- (gnus-score-load-files
- (gnus-all-score-files group)))
- list score-file)
- (while (setq list (car entries))
- (push (car list) score-file)
- (setq list (cdr list))
- (while list
- (when (member (caar list)
- gnus-agent-scoreable-headers)
- (push (car list) score-file))
- (setq list (cdr list)))
- (setq score-param
- (append score-param (list (nreverse score-file)))
- score-file nil entries (cdr entries)))
- (list score-param))
- (if (stringp (car score-method))
- score-method
- (list (list score-method)))))))
- (when score-param
- (gnus-score-headers score-param))
- (setq arts nil)
- (while (setq gnus-headers (pop gnus-newsgroup-headers))
- (setq gnus-score
- (or (cdr (assq (mail-header-number gnus-headers)
- gnus-newsgroup-scored))
- gnus-summary-default-score))
- (when (funcall predicate)
- (push (mail-header-number gnus-headers)
- arts))))
+ (setq score-param
+ (or (gnus-group-get-parameter group 'agent-score)
+ (caddr category)))
+ (when score-param
+ (gnus-score-headers (list (list score-param))))
+ (setq arts nil)
+ (while (setq gnus-headers (pop gnus-newsgroup-headers))
+ (setq gnus-score
+ (or (cdr (assq (mail-header-number gnus-headers)
+ gnus-newsgroup-scored))
+ gnus-summary-default-score))
+ (when (funcall predicate)
+ (push (mail-header-number gnus-headers)
+ arts)))
;; Fetch the articles.
(when arts
(gnus-agent-fetch-articles group arts)))
"Write the category alist."
(setq gnus-category-predicate-cache nil
gnus-category-group-cache nil)
- (with-temp-file (nnheader-concat gnus-agent-directory "lib/categories")
+ (nnheader-temp-write (nnheader-concat gnus-agent-directory "lib/categories")
(prin1 gnus-category-alist (current-buffer))))
(defun gnus-category-edit-predicate (category)
"Expire all old articles."
(interactive)
(let ((methods gnus-agent-covered-methods)
- (day (- (time-to-day (current-time)) gnus-agent-expire-days))
+ (day (- (gnus-time-to-day (current-time)) gnus-agent-expire-days))
gnus-command-method sym group articles
history overview file histories elem art nov-file low info
unreads marked article)
(require 'gnus-spec)
(require 'gnus-int)
(require 'browse-url)
-(require 'mm-bodies)
(defgroup gnus-article nil
"Article display."
:group 'gnus-article-washing)
(eval-and-compile
+ (autoload 'hexl-hex-string-to-integer "hexl")
+ (autoload 'timezone-make-date-arpa-standard "timezone")
(autoload 'mail-extract-address-components "mail-extr"))
(defcustom gnus-save-all-headers t
:type 'regexp
:group 'gnus-article-various)
-(defcustom gnus-article-mode-line-format "Gnus: %g %S"
+(defcustom gnus-article-mode-line-format "Gnus: %%b %S"
"*The format specification for the article mode line.
See `gnus-summary-mode-line-format' for a closer description."
:type 'string
((eq elem 'date)
(let ((date (message-fetch-field "date")))
(when (and date
- (< (days-between (current-time-string) date)
+ (< (gnus-days-between (current-time-string) date)
4))
(gnus-article-hide-header "date"))))
((eq elem 'long-to)
(process-send-region "article-x-face" beg end)
(process-send-eof "article-x-face"))))))))))
-(defun gnus-article-decode-mime-words ()
- "Decode all MIME-encoded words in the article."
- (interactive)
- (save-excursion
- (set-buffer gnus-article-buffer)
- (let ((inhibit-point-motion-hooks t)
- buffer-read-only)
- (rfc2047-decode-region (point-min) (point-max)))))
-
-(defun gnus-article-decode-charset (&optional prompt)
- "Decode charset-encoded text in the article.
-If PROMPT (the prefix), prompt for a coding system to use."
- (interactive "P")
- (save-excursion
- (set-buffer gnus-article-buffer)
- (save-restriction
- (message-narrow-to-head)
- (let* ((inhibit-point-motion-hooks t)
- (ct (message-fetch-field "Content-Type" t))
- (cte (message-fetch-field "Content-Transfer-Encoding" t))
- (charset (cond
- (prompt
- (mm-read-coding-system "Charset to decode: "))
- (ct
- (mm-content-type-charset ct))
- (gnus-newsgroup-name
- (gnus-group-find-parameter
- gnus-newsgroup-name 'charset))))
- buffer-read-only)
- (goto-char (point-max))
- (widen)
- (narrow-to-region (point) (point-max))
- (when (or (not ct)
- (string-match "text/plain" ct))
- (mm-decode-body
- charset (and cte (intern (downcase
- (gnus-strip-whitespace cte))))))))))
+(defun gnus-hack-decode-rfc1522 ()
+ "Emergency hack function for avoiding problems when decoding."
+ (let ((buffer-read-only nil))
+ (goto-char (point-min))
+ ;; Remove encoded TABs.
+ (while (search-forward "=09" nil t)
+ (replace-match " " t t))
+ ;; Remove encoded newlines.
+ (goto-char (point-min))
+ (while (search-forward "=10" nil t)
+ (replace-match " " t t))))
(defalias 'gnus-decode-rfc1522 'article-decode-rfc1522)
(defalias 'gnus-article-decode-rfc1522 'article-decode-rfc1522)
(defun article-decode-rfc1522 ()
- "Remove QP encoding from headers."
- (let ((inhibit-point-motion-hooks t)
- (buffer-read-only nil))
+ "Hack to remove QP encoding from headers."
+ (let ((case-fold-search t)
+ (inhibit-point-motion-hooks t)
+ (buffer-read-only nil)
+ string)
(save-restriction
- (message-narrow-to-head)
- (rfc2047-decode-region (point-min) (point-max)))))
+ (narrow-to-region
+ (goto-char (point-min))
+ (or (search-forward "\n\n" nil t) (point-max)))
+ (goto-char (point-min))
+ (while (re-search-forward
+ "=\\?iso-8859-1\\?q\\?\\([^?\t\n]*\\)\\?=" nil t)
+ (setq string (match-string 1))
+ (save-restriction
+ (narrow-to-region (match-beginning 0) (match-end 0))
+ (delete-region (point-min) (point-max))
+ (insert string)
+ (article-mime-decode-quoted-printable
+ (goto-char (point-min)) (point-max))
+ (subst-char-in-region (point-min) (point-max) ?_ ? )
+ (goto-char (point-max)))
+ (goto-char (point-min))))))
(defun article-de-quoted-unreadable (&optional force)
- "Translate a quoted-printable-encoded article.
+ "Do a naive translation of a quoted-printable-encoded article.
+This is in no way, shape or form meant as a replacement for real MIME
+processing, but is simply a stop-gap measure until MIME support is
+written.
If FORCE, decode the article whether it is marked as quoted-printable
or not."
(interactive (list 'force))
(save-excursion
- (let ((buffer-read-only nil)
+ (let ((case-fold-search t)
+ (buffer-read-only nil)
(type (gnus-fetch-field "content-transfer-encoding")))
(gnus-article-decode-rfc1522)
(when (or force
(and type (string-match "quoted-printable" (downcase type))))
(goto-char (point-min))
(search-forward "\n\n" nil 'move)
- (quoted-printable-decode-region (point) (point-max))))))
+ (article-mime-decode-quoted-printable (point) (point-max))))))
(defun article-mime-decode-quoted-printable-buffer ()
"Decode Quoted-Printable in the current buffer."
- (quoted-printable-decode-region (point-min) (point-max)))
+ (article-mime-decode-quoted-printable (point-min) (point-max)))
+
+(defun article-mime-decode-quoted-printable (from to)
+ "Decode Quoted-Printable in the region between FROM and TO."
+ (interactive "r")
+ (goto-char from)
+ (while (search-forward "=" to t)
+ (cond ((eq (following-char) ?\n)
+ (delete-char -1)
+ (delete-char 1))
+ ((looking-at "[0-9A-F][0-9A-F]")
+ (subst-char-in-region
+ (1- (point)) (point) ?=
+ (hexl-hex-string-to-integer
+ (buffer-substring (point) (+ 2 (point)))))
+ (delete-char 2))
+ ((looking-at "=")
+ (delete-char 1))
+ ((gnus-message 3 "Malformed MIME quoted-printable message")))))
(defun article-hide-pgp (&optional arg)
"Toggle hiding of any PGP headers and signatures in the current article.
(setq b (point))
(point-max))
(setq e (point-max)))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer-substring gnus-article-buffer b e)
(require 'url)
(save-window-excursion
;; functions since they aren't particularly resistant to
;; buggy dates.
((eq type 'local)
- (concat "Date: " (current-time-string (date-to-time date))))
+ (concat "Date: " (condition-case ()
+ (timezone-make-date-arpa-standard date)
+ (error date))))
;; Convert to Universal Time.
((eq type 'ut)
(concat "Date: "
- (current-time-string
- (let ((e (parse-time-string date)))
- (setcar (last e) 0)
- (encode-time e)))))
+ (condition-case ()
+ (timezone-make-date-arpa-standard date nil "UT")
+ (error date))))
;; Get the original date from the article.
((eq type 'original)
(concat "Date: " date))
;; Let the user define the format.
((eq type 'user)
(if (gnus-functionp gnus-article-time-format)
- (funcall gnus-article-time-format (date-to-time date))
+ (funcall
+ gnus-article-time-format
+ (ignore-errors
+ (gnus-encode-date
+ (timezone-make-date-arpa-standard
+ date nil "UT"))))
(concat
"Date: "
- (format-time-string gnus-article-time-format (date-to-time date)))))
+ (format-time-string gnus-article-time-format
+ (ignore-errors
+ (gnus-encode-date
+ (timezone-make-date-arpa-standard
+ date nil "UT")))))))
;; ISO 8601.
((eq type 'iso8601)
(concat
"Date: "
- (format-time-string "%Y%M%DT%h%m%s" (date-to-time date))))
+ (format-time-string "%Y%M%DT%h%m%s"
+ (ignore-errors
+ (gnus-encode-date
+ (timezone-make-date-arpa-standard
+ date nil "UT"))))))
;; Do an X-Sent lapsed format.
((eq type 'lapsed)
;; If the date is seriously mangled, the timezone functions are
;; liable to bug out, so we ignore all errors.
(let* ((now (current-time))
- (real-time (subtract-time now (date-to-time date)))
+ (real-time
+ (ignore-errors
+ (gnus-time-minus
+ (gnus-encode-date
+ (timezone-make-date-arpa-standard
+ (current-time-string now)
+ (current-time-zone now) "UT"))
+ (gnus-encode-date
+ (timezone-make-date-arpa-standard
+ date nil "UT")))))
(real-sec (and real-time
(+ (* (float (car real-time)) 65536)
(cadr real-time))))
(save-excursion
(save-restriction
(widen)
- (rmail-output-to-rmail-file filename))))
+ (gnus-output-to-rmail filename))))
filename)
(defun gnus-summary-save-in-mail (&optional filename)
(widen)
(if (and (file-readable-p filename)
(mail-file-babyl-p filename))
- (rmail-output-to-rmail-file filename t)
+ (gnus-output-to-rmail filename t)
(gnus-output-to-mail filename)))))
filename)
(buffer-disable-undo (current-buffer))
(setq buffer-read-only t)
(set-syntax-table gnus-article-mode-syntax-table)
- (mm-enable-multibyte)
(gnus-run-hooks 'gnus-article-mode-hook))
(defun gnus-article-setup-buffer ()
;; Init original article buffer.
(save-excursion
(set-buffer (gnus-get-buffer-create gnus-original-article-buffer))
- (mm-enable-multibyte)
+ (buffer-disable-undo (current-buffer))
(setq major-mode 'gnus-original-article-mode)
(make-local-variable 'gnus-original-article))
(if (get-buffer name)
(defun gnus-output-to-file (file-name)
"Append the current article to a file named FILE-NAME."
(let ((artbuf (current-buffer)))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer-substring artbuf)
;; Append newline at end of the buffer as separator, and then
;; save it to file.
(defun gnus-url-parse-query-string (query &optional downcase)
(let (retval pairs cur key val)
- (setq pairs (split-string query "&"))
+ (setq pairs (gnus-split-string query "&"))
(while pairs
(setq cur (car pairs)
pairs (cdr pairs))
(when (or force
(and gnus-cache-active-hashtb
gnus-cache-active-altered))
- (with-temp-file gnus-cache-active-file
+ (nnheader-temp-write gnus-cache-active-file
(mapatoms
(lambda (sym)
(when (and sym (boundp sym))
(defvar gnus-inhibit-demon nil
"*If non-nil, no daemonic function will be run.")
+(eval-and-compile
+ (autoload 'timezone-parse-date "timezone")
+ (autoload 'timezone-make-arpa-date "timezone"))
+
;;; Functions.
(defun gnus-demon-add-handler (function time idle)
time
(let* ((now (current-time))
;; obtain NOW as discrete components -- make a vector for speed
- (nowParts (decode-time now))
+ (nowParts (apply 'vector (decode-time now)))
;; obtain THEN as discrete components
- (thenParts (parse-time-string time))
+ (thenParts (timezone-parse-time time))
(thenHour (string-to-int (elt thenParts 0)))
(thenMin (string-to-int (elt thenParts 1)))
;; convert time as elements into number of seconds since EPOCH.
(defun gnus-demon-nntp-close-connection ()
(save-window-excursion
- (when (time-less-p '(0 300) (time-since nntp-last-command-time))
+ (when (nnmail-time-less '(0 300)
+ (nnmail-time-since nntp-last-command-time))
(nntp-close-server))))
(defun gnus-demon-add-scanmail ()
"Save the duplicate suppression list."
(when (and gnus-save-duplicate-list
gnus-dup-list-dirty)
- (with-temp-file gnus-duplicate-file
+ (nnheader-temp-write gnus-duplicate-file
(gnus-prin1 `(setq gnus-dup-list ',gnus-dup-list))))
(setq gnus-dup-list-dirty nil))
(autoload 'gnus-xmas-redefine "gnus-xmas")
(autoload 'appt-select-lowest-window "appt"))
+(or (fboundp 'mail-file-babyl-p)
+ (fset 'mail-file-babyl-p 'rmail-file-p))
+
;;; Mule functions.
(defun gnus-mule-cite-add-face (number prefix face)
(truncate-string valstr (, max-width))
valstr))))
+(defun gnus-encode-coding-string (string system)
+ string)
+
+(defun gnus-decode-coding-string (string system)
+ string)
+
(eval-and-compile
(if (string-match "XEmacs\\|Lucid" emacs-version)
nil
((string-match "XEmacs\\|Lucid" emacs-version)
(gnus-xmas-define))
+ ((or (not (boundp 'emacs-minor-version))
+ (and (< emacs-major-version 20)
+ (< emacs-minor-version 30)))
+ ;; Remove the `intangible' prop.
+ (let ((props (and (boundp 'gnus-hidden-properties)
+ gnus-hidden-properties)))
+ (while (and props (not (eq (car (cdr props)) 'intangible)))
+ (setq props (cdr props)))
+ (when props
+ (setcdr props (cdr (cdr (cdr props))))))
+ (unless (fboundp 'buffer-substring-no-properties)
+ (defun buffer-substring-no-properties (beg end)
+ (format "%s" (buffer-substring beg end)))))
+
((boundp 'MULE)
(provide 'gnusutil))))
;; `emacs-version'. In this case, implementation for XEmacs/mule
;; may be able to share between XEmacs and XEmacs/mule.
+ (defalias 'gnus-truncate-string 'truncate-string)
+
(defvar gnus-summary-display-table nil
"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 (lambda ()))
+ (fset 'gnus-encode-coding-string 'encode-coding-string)
+ (fset 'gnus-decode-coding-string 'decode-coding-string)
(when (boundp 'gnus-check-before-posting)
(setq gnus-check-before-posting
(erase-buffer)
(when (and dir
(file-exists-p (setq file (concat dir "x-splash"))))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-file-contents file)
(goto-char (point-min))
(ignore-errors
(make-face 'gnus-splash))
(setq height (/ (car pixmap) (frame-char-height))
width (/ (cadr pixmap) (frame-char-width)))
- (set-face-foreground 'gnus-splash "Brown")
+ (set-face-foreground 'gnus-splash "ForestGreen")
(set-face-stipple 'gnus-splash pixmap)
(insert-char ?\n (* (/ (window-height) 2 height) height))
(setq i height)
(goto-char (point-min))
(sit-for 0))))))
+(if (fboundp 'split-string)
+ (fset 'gnus-split-string 'split-string)
+ (defun gnus-split-string (string pattern)
+ "Return a list of substrings of STRING which are separated by PATTERN."
+ (let (parts (start 0))
+ (while (string-match pattern string start)
+ (setq parts (cons (substring string start (match-beginning 0)) parts)
+ start (match-end 0)))
+ (nreverse (cons (substring string start) parts)))))
+
(provide 'gnus-ems)
;; Local Variables:
(require 'gnus-range)
(require 'gnus-win)
(require 'gnus-undo)
-(require 'time-date)
(defcustom gnus-group-archive-directory
"*ftp@ftp.hpc.uh.edu:/pub/emacs/ding-list/"
(push (cons header regexps) scores))
scores)))
(gnus-group-make-group group "nnkiboze" address)
- (with-temp-file (gnus-score-file-name (concat "nnkiboze:" group))
+ (nnheader-temp-write (gnus-score-file-name (concat "nnkiboze:" group))
(let (emacs-lisp-mode-hook)
(pp scores (current-buffer)))))
;; Go through all the infos and replace the old entries
;; with the new infos.
(while infos
- (setcar (car entries) (pop infos))
+ (setcar entries (pop infos))
(pop entries))
;; Update the hashtable.
(gnus-make-hashtable-from-newsrc-alist)))
-(defun gnus-group-sort-selected-groups-by-alphabet (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-alphabet (&optional reverse)
"Sort the group buffer alphabetically by group name.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-alphabet reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-alphabet reverse))
-(defun gnus-group-sort-selected-groups-by-unread (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-unread (&optional reverse)
"Sort the group buffer by number of unread articles.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-unread reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-unread reverse))
-(defun gnus-group-sort-selected-groups-by-level (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-level (&optional reverse)
"Sort the group buffer by group level.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-level reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-level reverse))
-(defun gnus-group-sort-selected-groups-by-score (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-score (&optional reverse)
"Sort the group buffer by group score.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-score reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-score reverse))
-(defun gnus-group-sort-selected-groups-by-rank (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-rank (&optional reverse)
"Sort the group buffer by group rank.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-rank reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-rank reverse))
-(defun gnus-group-sort-selected-groups-by-method (&optional n reverse)
+(defun gnus-group-sort-selected-groups-by-method (&optional reverse)
"Sort the group buffer alphabetically by backend name.
-Obeys the process/prefix convention. If REVERSE (the symbolic prefix),
-sort in reverse order."
- (interactive (gnus-interactive "P\ny"))
- (gnus-group-sort-selected-groups n 'gnus-group-sort-by-method reverse))
+If REVERSE, sort in reverse order."
+ (interactive "P")
+ (gnus-group-sort-selected-groups 'gnus-group-sort-by-method reverse))
;;; Sorting predicates.
(gnus-get-info group) (gnus-active group) t)
(unless (gnus-virtual-group-p group)
(gnus-close-group group))
- (when gnus-agent
- (gnus-agent-save-group-info
- method (gnus-group-real-name group) (gnus-active group)))
+ (gnus-agent-save-group-info
+ method (gnus-group-real-name group) (gnus-active group))
(gnus-group-update-group group))
(if (eq (gnus-server-status (gnus-find-method-for-group group))
'denied)
"Return the offset in seconds from the timestamp for GROUP to the current time, as a floating point number."
(let* ((time (or (gnus-group-timestamp group)
(list 0 0)))
- (delta (subtract-time (current-time) time)))
+ (delta (gnus-time-minus (current-time) time)))
(+ (* (nth 0 delta) 65536.0)
(nth 1 delta))))
;; It's on the form (regexp . date).
(if (zerop (gnus-execute field (car kill-list)
command nil (not all)))
- (when (> (days-between date (cdr kill-list))
+ (when (> (gnus-days-between date (cdr kill-list))
gnus-kill-expiry-days)
(setq regexp nil))
(setcdr kill-list date))
(setq kdate (cdr kill))
(if (zerop (gnus-execute
field (car kill) command nil (not all)))
- (when (> (days-between date kdate)
+ (when (> (gnus-days-between date kdate)
gnus-kill-expiry-days)
;; Time limit has been exceeded, so we
;; remove the match.
((eq type 'at)
(equal date match))
((eq type 'before)
- (time-less-p match date))
+ (gnus-time-less match date))
((eq type 'after)
- (time-less-p date match))
+ (gnus-time-less date match))
(t
(error "No such date score type: %s" type)))))
;;; Post news commands of Gnus group mode and summary mode
-(defun gnus-group-mail (&optional arg)
- "Start composing a mail.
-If ARG, use the group under the point to find a posting style.
-If ARG is 1, prompt for a group name to find the posting style."
- (interactive "P")
- (let ((gnus-newsgroup-name
- (if arg
- (if (= 1 (prefix-numeric-value arg))
- (completing-read "Use style of group: " gnus-active-hashtb nil
- (gnus-read-active-file-p))
- (gnus-group-group-name))
- "")))
- (gnus-setup-message 'message (message-mail))
- ))
+(defun gnus-group-mail ()
+ "Start composing a mail."
+ (interactive)
+ (gnus-setup-message 'message
+ (message-mail)))
(defun gnus-group-post-news (&optional arg)
"Start composing a news message.
;; this buffer should be passed to all mail/news reply/post routines.
(setq gnus-article-copy (gnus-get-buffer-create " *gnus article copy*"))
(buffer-disable-undo gnus-article-copy)
- (save-excursion
- (set-buffer gnus-article-copy)
- (mm-enable-multibyte))
(let ((article-buffer (or article-buffer gnus-article-buffer))
end beg)
(if (not (and (get-buffer article-buffer)
(list gnus-post-method)))
gnus-secondary-select-methods
(mapcar 'cdr gnus-server-alist)
- (mapcar 'car gnus-opened-servers)
(list gnus-select-method)
(list group-method)))
method-alist post-methods method)
;; Weed out all mail methods.
(while methods
(setq method (gnus-server-get-method "" (pop methods)))
- (when (and (or (gnus-method-option-p method 'post)
- (gnus-method-option-p method 'post-mail))
- (not (member method post-methods)))
+ (when (or (gnus-method-option-p method 'post)
+ (gnus-method-option-p method 'post-mail))
(push method post-methods)))
;; Create a name-method alist.
(setq method-alist
(concat " - \"" xemacs-codename "\""))))
(t emacs-version))))
+;; Written by "Mr. Per Persson" <pp@gnu.ai.mit.edu>.
+(defun gnus-inews-insert-mime-headers ()
+ "Insert MIME headers.
+Assumes ISO-Latin-1 is used iff 8-bit characters are present."
+ (goto-char (point-min))
+ (let ((mail-header-separator
+ (progn
+ (goto-char (point-min))
+ (if (and (search-forward (concat "\n" mail-header-separator "\n")
+ nil t)
+ (not (search-backward "\n\n" nil t)))
+ mail-header-separator
+ ""))))
+ (or (mail-position-on-field "Mime-Version")
+ (insert "1.0")
+ (cond ((save-restriction
+ (widen)
+ (goto-char (point-min))
+ (re-search-forward "[^\000-\177]" nil t))
+ (or (mail-position-on-field "Content-Type")
+ (insert "text/plain; charset=ISO-8859-1"))
+ (or (mail-position-on-field "Content-Transfer-Encoding")
+ (insert "8bit")))
+ (t (or (mail-position-on-field "Content-Type")
+ (insert "text/plain; charset=US-ASCII"))
+ (or (mail-position-on-field "Content-Transfer-Encoding")
+ (insert "7bit")))))))
+
+(custom-add-option 'message-header-hook 'gnus-inews-insert-mime-headers)
+
\f
;;;
;;; Gnus Mail Functions
(save-excursion
(let ((dependencies (make-vector 10 nil))
headers header)
- (with-temp-buffer
+ (nnheader-temp-write nil
(setq headers
(if (eq 'nov
(gnus-retrieve-headers
(let ((date (mail-header-date header))
issuer b e type)
(when (or (not date)
- (time-less-p
- (time-since (date-to-time date))
- (days-to-time gnus-nocem-expiry-wait)))
+ (nnmail-time-less
+ (nnmail-time-since (nnmail-date-to-time date))
+ (nnmail-days-to-time gnus-nocem-expiry-wait)))
(gnus-request-article-this-buffer (mail-header-number header) group)
(goto-char (point-min))
(when (re-search-forward "-----BEGIN PGP MESSAGE-----" nil t)
"Save the NoCeM cache."
(when (and gnus-nocem-alist
gnus-nocem-touched-alist)
- (with-temp-file (gnus-nocem-cache-file)
+ (nnheader-temp-write (gnus-nocem-cache-file)
(gnus-prin1 `(setq gnus-nocem-alist ',gnus-nocem-alist)))
(setq gnus-nocem-touched-alist nil)))
(defun gnus-nocem-save-active ()
"Save the NoCeM active file."
- (with-temp-file (gnus-nocem-active-file)
+ (nnheader-temp-write (gnus-nocem-active-file)
(gnus-prin1 `(setq gnus-nocem-active ',gnus-nocem-active))))
(defun gnus-nocem-alist-to-hashtb ()
(let* ((alist gnus-nocem-alist)
(pprev (cons nil alist))
(prev pprev)
- (expiry (days-to-time gnus-nocem-expiry-wait))
+ (expiry (nnmail-days-to-time gnus-nocem-expiry-wait))
entry)
(setq gnus-nocem-hashtb (gnus-make-hashtable (* (length alist) 51)))
(while (setq entry (car alist))
- (if (not (time-less-p (time-since (car entry)) expiry))
+ (if (not (nnmail-time-less (nnmail-time-since (car entry)) expiry))
;; This entry has expired, so we remove it.
(setcdr prev (cdr alist))
(setq prev alist)
(defun gnus-summary-score-entry (header match type score date
&optional prompt silent)
- (interactive)
"Enter score file entry.
HEADER is the header being scored.
MATCH is the string we are looking for.
(type
(list match score
(and date (if (numberp date) date
- (date-to-day date)))
+ (gnus-day-number date)))
type))
- (date (list match score (date-to-day date)))
+ (date (list match score (gnus-day-number date)))
(score (list match score))
(t (list match))))
;; We see whether we can collapse some score entries.
(or (not decay)
(gnus-decay-scores alist decay)))
(gnus-score-set 'touched '(t) alist)
- (gnus-score-set 'decay (list (time-to-day (current-time))) alist))
+ (gnus-score-set 'decay (list (gnus-time-to-day (current-time))) alist))
;; We do not respect eval and files atoms from global score
;; files.
(when (and files (not global))
;; Couldn't read file.
(setq gnus-score-alist nil)
;; Read file.
- (with-temp-buffer
- (let ((coding-system-for-write score-mode-coding-system))
- (insert-file-contents file))
+ (save-excursion
+ (gnus-set-work-buffer)
+ (insert-file-contents file)
(goto-char (point-min))
;; Only do the loading if the score file isn't empty.
(when (save-excursion (re-search-forward "[()0-9a-zA-Z]" nil t))
(setcar scor
(list (caar scor) (nth 2 (car scor))
(and (nth 3 (car scor))
- (date-to-day (nth 3 (car scor))))
+ (gnus-day-number (nth 3 (car scor))))
(if (nth 1 (car scor)) 'r 's)))
(setq scor (cdr scor))))
(push (if (not (listp (cdr entry)))
(delete-file file)
;; There are scores, so we write the file.
(when (file-writable-p file)
- (let ((coding-system-for-write score-mode-coding-system))
- (gnus-write-buffer file))
+ (gnus-write-buffer file)
(when gnus-score-after-write-file-function
(funcall gnus-score-after-write-file-function file)))))
(and gnus-score-uncacheable-files
(when (and gnus-summary-default-score
scores)
(let* ((entries gnus-header-index)
- (now (date-to-day (current-time-string)))
+ (now (gnus-day-number (current-time-string)))
(expire (and gnus-score-expiry-days
(- now gnus-score-expiry-days)))
(headers gnus-newsgroup-headers)
;; Perform adaptive word scoring.
(when (and (listp gnus-newsgroup-adaptive)
(memq 'word gnus-newsgroup-adaptive))
- (with-temp-buffer
+ (nnheader-temp-write nil
(let* ((hashtb (gnus-make-hashtable 1000))
- (date (date-to-day (current-time-string)))
+ (date (gnus-day-number (current-time-string)))
(data gnus-newsgroup-data)
(syntab (syntax-table))
word d score val)
(defun gnus-sort-score-files (files)
"Sort FILES so that the most general files come first."
- (with-temp-buffer
+ (nnheader-temp-write nil
(let ((alist
(mapcar
(lambda (file)
(defun gnus-decay-scores (alist day)
"Decay non-permanent scores in ALIST."
- (let ((times (- (time-to-day (current-time)) day))
+ (let ((times (- (gnus-time-to-day (current-time)) day))
kill entry updated score n)
(unless (zerop times) ;Done decays today already?
(while (setq entry (pop alist))
"Write the AREAS file."
(interactive)
(when gnus-soup-areas
- (with-temp-file (concat gnus-soup-directory "AREAS")
+ (nnheader-temp-write (concat gnus-soup-directory "AREAS")
(let ((areas gnus-soup-areas)
area)
(while (setq area (pop areas))
(defun gnus-soup-write-replies (dir areas)
"Write a REPLIES file in DIR containing AREAS."
- (with-temp-file (concat dir "REPLIES")
+ (nnheader-temp-write (concat dir "REPLIES")
(let (area)
(while (setq area (pop areas))
(insert (format "%s\t%s\t%s\n"
enable-multibyte-characters
(fboundp 'gnus-mule-get-coding-system)
(gnus-mule-get-coding-system (symbol-name group)))))
- (when coding
- (setq str (nnheader-decode-coding-string str (car coding))))
+ (if coding
+ (setq str (gnus-decode-coding-string str (car coding))))
(set group str)))
(forward-line 1))))
(gnus-message 5 "Reading descriptions file...done")
:group 'gnus-threading
:type 'string)
-(defcustom gnus-summary-mode-line-format "Gnus: %g [%A] %Z"
+(defcustom gnus-summary-mode-line-format "Gnus: %%b [%A] %Z"
"*The format specification for the summary mode line.
It works along the same lines as a normal formatting string,
with some simple extensions:
:group 'gnus-summary-visual
:type 'hook)
-(defcustom gnus-parse-headers-hook nil
+(defcustom gnus-structured-field-decoder 'identity
+ "Function to decode non-ASCII characters in structured field for summary."
+ :group 'gnus-various
+ :type 'function)
+
+(defcustom gnus-unstructured-field-decoder 'identity
+ "Function to decode non-ASCII characters in unstructured field for summary."
+ :group 'gnus-various
+ :type 'function)
+
+(defcustom gnus-parse-headers-hook
+ (list 'gnus-hack-decode-rfc1522 'gnus-decode-rfc1522)
"*A hook called before parsing the headers."
:group 'gnus-various
:type 'hook)
"c" gnus-article-highlight-citation
"s" gnus-article-highlight-signature)
- (gnus-define-keys (gnus-summary-wash-mime-map "M" gnus-summary-wash-map)
- "w" gnus-article-decode-mime-words
- "c" gnus-article-decode-charset)
-
(gnus-define-keys (gnus-summary-wash-time-map "T" gnus-summary-wash-map)
"z" gnus-article-date-ut
"u" gnus-article-date-ut
["Headers" gnus-article-highlight-headers t]
["Signature" gnus-article-highlight-signature t]
["Citation" gnus-article-highlight-citation t])
- ("MIME"
- ["Words" gnus-article-decode-mime-words t]
- ["Charset" gnus-article-decode-charset t]
- ["QP" gnus-article-de-quoted-unreadable t])
("Date"
["Local" gnus-article-date-local t]
["ISO8601" gnus-article-date-iso8601 t]
(make-local-hook 'pre-command-hook)
(add-hook 'pre-command-hook 'gnus-set-global-variables nil t)
(gnus-run-hooks 'gnus-summary-mode-hook)
- (mm-enable-multibyte)
(gnus-update-format-specifications nil 'summary 'summary-mode 'summary-dummy)
(gnus-update-summary-mark-positions))
(setq header
(make-full-mail-header
number ; number
- (rfc2047-decode-string (gnus-nov-field)) ; subject
- (rfc2047-decode-string (gnus-nov-field)) ; from
+ (funcall
+ gnus-unstructured-field-decoder (gnus-nov-field)) ; subject
+ (funcall
+ gnus-structured-field-decoder (gnus-nov-field)) ; from
(gnus-nov-field) ; date
(or (gnus-nov-field)
(nnheader-generate-fake-message-id)) ; id
(defsubst gnus-article-sort-by-date (h1 h2)
"Sort articles by root article date."
- (time-less-p
+ (gnus-time-less
(gnus-date-get-time (mail-header-date h1))
(gnus-date-get-time (mail-header-date h2))))
;; We might have to chop a bit of the string off...
(when (> (length mode-string) max-len)
(setq mode-string
- (concat (truncate-string mode-string (- max-len 3))
+ (concat (gnus-truncate-string mode-string (- max-len 3))
"...")))
;; Pad the mode string a bit.
(setq mode-string (format (format "%%-%ds" max-len) mode-string))))
(progn
(goto-char p)
(if (search-forward "\nsubject: " nil t)
- (rfc2047-decode-string (nnheader-header-value))
+ (funcall
+ gnus-unstructured-field-decoder (nnheader-header-value))
"(none)"))
;; From.
(progn
(goto-char p)
(if (search-forward "\nfrom: " nil t)
- (rfc2047-decode-string (nnheader-header-value))
+ (funcall
+ gnus-structured-field-decoder (nnheader-header-value))
"(nobody)"))
;; Date.
(progn
number dependencies force-new))))
(push header headers))
(forward-line 1))
- ;(error
- ; (gnus-error 4 "Strange nov line (%d)"
- ; (count-lines (point-min) (point))))
- )
+ (error
+ (gnus-error 4 "Strange nov line (%d)"
+ (count-lines (point-min) (point)))))
(forward-line 1))
;; A common bug in inn is that if you have posted an article and
;; then retrieves the active file, it will answer correctly --
(interactive "nTime in days: \nP")
(prog1
(let ((data gnus-newsgroup-data)
- (cutoff (days-to-time age))
+ (cutoff (nnmail-days-to-time age))
articles d date is-younger)
(while (setq d (pop data))
(when (and (vectorp (gnus-data-header d))
(setq date (mail-header-date (gnus-data-header d))))
- (setq is-younger (time-less-p
- (time-since (date-to-time date))
+ (setq is-younger (nnmail-time-less
+ (nnmail-time-since (nnmail-date-to-time date))
cutoff))
(when (if younger-p
is-younger
(gnus-summary-remove-process-mark article)
(when (gnus-summary-display-article article)
(save-excursion
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer-substring gnus-original-article-buffer)
;; Remove some headers that may lead nndoc to make
;; the wrong guess.
lines (count-lines (point-min) (point-max)))
(insert "From: " (read-string "From: ") "\n"
"Subject: " (read-string "Subject: ") "\n"
- "Date: " (message-make-date (nth 5 atts))
+ "Date: " (timezone-make-date-arpa-standard
+ (current-time-string (nth 5 atts))
+ (current-time-zone now)
+ (current-time-zone now))
"\n"
"Message-ID: " (message-make-message-id) "\n"
"Lines: " (int-to-string lines) "\n"
(interactive)
;; Replace the article.
(let ((buf (current-buffer)))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer buf)
(if (and (not read-only)
(not (gnus-request-replace-article
(message-narrow-to-head)
(let ((head (buffer-string))
header)
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert (format "211 %d Article retrieved.\n"
(cdr gnus-article-current)))
(insert head)
(gnus-summary-select-article t t nil current-article))
(set-buffer gnus-original-article-buffer)
(let ((buf (format "%s" (buffer-string))))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert buf)
(goto-char (point-min))
(if (re-search-forward "^References: " nil t)
If N is nil and any articles have been marked with the process mark,
save those articles instead."
(interactive "P")
- (let ((gnus-default-article-saver 'rmail-output-to-rmail-file))
+ (let ((gnus-default-article-saver 'gnus-summary-save-in-rmail))
(gnus-summary-save-article arg)))
(defun gnus-summary-save-article-file (&optional arg)
(require 'custom)
(eval-when-compile (require 'cl))
(require 'nnheader)
+(require 'timezone)
(require 'message)
-(require 'time-date)
(eval-and-compile
+ (autoload 'nnmail-date-to-time "nnmail")
(autoload 'rmail-insert-rmail-file-header "rmail")
(autoload 'rmail-count-new-messages "rmail")
(autoload 'rmail-show-message "rmail"))
(set symbol nil))
symbol))
+(defun gnus-truncate-string (str width)
+ (substring str 0 width))
+
;; Added by Geoffrey T. Dairiki <dairiki@u.washington.edu>. A safe way
;; to limit the length of a string. This function is necessary since
;; `(substr "abc" 0 30)' pukes with "Args out of range".
(when (gnus-buffer-exists-p buf)
(kill-buffer buf))))
-(fset 'gnus-point-at-bol
- (if (fboundp 'point-at-bol)
- 'point-at-bol
- 'line-beginning-position))
-
-(fset 'gnus-point-at-eol
- (if (fboundp 'point-at-eol)
- 'point-at-eol
- 'line-end-position))
+(if (fboundp 'point-at-bol)
+ (fset 'gnus-point-at-bol 'point-at-bol)
+ (defun gnus-point-at-bol ()
+ "Return point at the beginning of the line."
+ (let ((p (point)))
+ (beginning-of-line)
+ (prog1
+ (point)
+ (goto-char p)))))
+
+(if (fboundp 'point-at-eol)
+ (fset 'gnus-point-at-eol 'point-at-eol)
+ (defun gnus-point-at-eol ()
+ "Return point at the end of the line."
+ (let ((p (point)))
+ (end-of-line)
+ (prog1
+ (point)
+ (goto-char p)))))
(defun gnus-delete-first (elt list)
"Delete by side effect the first occurrence of ELT as a member of LIST."
;;; Time functions.
+(defun gnus-days-between (date1 date2)
+ ;; Return the number of days between date1 and date2.
+ (- (gnus-day-number date1) (gnus-day-number date2)))
+
+(defun gnus-day-number (date)
+ (let ((dat (mapcar (lambda (s) (and s (string-to-int s)) )
+ (timezone-parse-date date))))
+ (timezone-absolute-from-gregorian
+ (nth 1 dat) (nth 2 dat) (car dat))))
+
+(defun gnus-time-to-day (time)
+ "Convert TIME to day number."
+ (let ((tim (decode-time time)))
+ (timezone-absolute-from-gregorian
+ (nth 4 tim) (nth 3 tim) (nth 5 tim))))
+
+(defun gnus-encode-date (date)
+ "Convert DATE to internal time."
+ (let* ((parse (timezone-parse-date date))
+ (date (mapcar (lambda (d) (and d (string-to-int d))) parse))
+ (time (mapcar 'string-to-int (timezone-parse-time (aref parse 3)))))
+ (encode-time (caddr time) (cadr time) (car time)
+ (caddr date) (cadr date) (car date)
+ (* 60 (timezone-zone-to-minute (nth 4 date))))))
+
+(defun gnus-time-minus (t1 t2)
+ "Subtract two internal times."
+ (let ((borrow (< (cadr t1) (cadr t2))))
+ (list (- (car t1) (car t2) (if borrow 1 0))
+ (- (+ (if borrow 65536 0) (cadr t1)) (cadr t2)))))
+
+(defun gnus-time-less (t1 t2)
+ "Say whether time T1 is less than time T2."
+ (or (< (car t1) (car t2))
+ (and (= (car t1) (car t2))
+ (< (nth 1 t1) (nth 1 t2)))))
+
(defun gnus-file-newer-than (file date)
(let ((fdate (nth 5 (file-attributes file))))
(or (> (car fdate) (car date))
(defun gnus-dd-mmm (messy-date)
"Return a string like DD-MMM from a big messy string."
- (format-time-string "%2d-%b" (date-to-time messy-date)))
+ (let ((datevec (ignore-errors (timezone-parse-date messy-date))))
+ (if (or (not datevec)
+ (string-equal "0" (aref datevec 1)))
+ "??-???"
+ (format "%2s-%s"
+ (condition-case ()
+ ;; Make sure leading zeroes are stripped.
+ (number-to-string (string-to-number (aref datevec 2)))
+ (error "??"))
+ (capitalize
+ (or (car
+ (nth (1- (string-to-number (aref datevec 1)))
+ timezone-months-assoc))
+ "???"))))))
(defmacro gnus-date-get-time (date)
"Convert DATE string to Emacs time.
'(0 0)
(or (get-text-property 0 'gnus-time d)
;; or compute the value...
- (let ((time (date-to-time d)))
+ (let ((time (nnmail-date-to-time d)))
;; and store it back in the string.
(put-text-property 0 1 'gnus-time time d)
time)))))
(cons (and (numberp event) event) event)))
(defun gnus-sortable-date (date)
- "Make string suitable for sorting from DATE."
- (gnus-time-iso8601 (date-to-time date)))
+ "Make sortable string by string-lessp from DATE.
+Timezone package is used."
+ (condition-case ()
+ (progn
+ (setq date (inline (timezone-fix-time
+ date nil
+ (aref (inline (timezone-parse-date date)) 4))))
+ (inline
+ (timezone-make-sortable-date
+ (aref date 0) (aref date 1) (aref date 2)
+ (inline
+ (timezone-make-time-string
+ (aref date 3) (aref date 4) (aref date 5))))))
+ (error "")))
(defun gnus-copy-file (file &optional to)
"Copy FILE to TO."
(erase-buffer))
(set-buffer (gnus-get-buffer-create gnus-work-buffer))
(kill-all-local-variables)
- (mm-enable-multibyte)))
+ (buffer-disable-undo (current-buffer))))
(defmacro gnus-group-real-name (group)
"Find the real name of a foreign newsgroup."
;;; Functions for saving to babyl/mail files.
+(defvar rmail-default-rmail-file)
+(defun gnus-output-to-rmail (filename &optional ask)
+ "Append the current article to an Rmail file named FILENAME."
+ (require 'rmail)
+ ;; Most of these codes are borrowed from rmailout.el.
+ (setq filename (expand-file-name filename))
+ (setq rmail-default-rmail-file filename)
+ (let ((artbuf (current-buffer))
+ (tmpbuf (gnus-get-buffer-create " *Gnus-output*")))
+ (save-excursion
+ (or (get-file-buffer filename)
+ (file-exists-p filename)
+ (if (or (not ask)
+ (gnus-yes-or-no-p
+ (concat "\"" filename "\" does not exist, create it? ")))
+ (let ((file-buffer (create-file-buffer filename)))
+ (save-excursion
+ (set-buffer file-buffer)
+ (rmail-insert-rmail-file-header)
+ (let ((require-final-newline nil))
+ (gnus-write-buffer filename)))
+ (kill-buffer file-buffer))
+ (error "Output file does not exist")))
+ (set-buffer tmpbuf)
+ (erase-buffer)
+ (insert-buffer-substring artbuf)
+ (gnus-convert-article-to-rmail)
+ ;; Decide whether to append to a file or to an Emacs buffer.
+ (let ((outbuf (get-file-buffer filename)))
+ (if (not outbuf)
+ (append-to-file (point-min) (point-max) filename)
+ ;; File has been visited, in buffer OUTBUF.
+ (set-buffer outbuf)
+ (let ((buffer-read-only nil)
+ (msg (and (boundp 'rmail-current-message)
+ (symbol-value 'rmail-current-message))))
+ ;; If MSG is non-nil, buffer is in RMAIL mode.
+ (when msg
+ (widen)
+ (narrow-to-region (point-max) (point-max)))
+ (insert-buffer-substring tmpbuf)
+ (when msg
+ (goto-char (point-min))
+ (widen)
+ (search-backward "\^_")
+ (narrow-to-region (point) (point-max))
+ (goto-char (1+ (point-min)))
+ (rmail-count-new-messages t)
+ (rmail-show-message msg))
+ (save-buffer)))))
+ (kill-buffer tmpbuf)))
+
(defun gnus-output-to-mail (filename &optional ask)
"Append the current article to a mail file named FILENAME."
(setq filename (expand-file-name filename))
directory)
:group 'gnus-xmas)
-;;(format "%02x%02x%02x" 114 66 20) "724214"
-
(defvar gnus-xmas-logo-color-alist
'((flame "#cc3300" "#ff2200")
(pine "#c0cc93" "#f8ffb8")
(grape "#b264cc" "#cf7df")
(labia "#cc64c2" "#fd7dff")
(berry "#cc6485" "#ff7db5")
- (dino "#724214" "#1e3f03")
(neutral "#b4b4b4" "#878787")
(september "#bf9900" "#ffcc00"))
"Color alist used for the Gnus logo.")
-(defcustom gnus-xmas-logo-color-style 'dino
+(defcustom gnus-xmas-logo-color-style 'moss
"*Color styles used for the Gnus logo."
:type '(choice (const flame) (const pine) (const moss)
(const irish) (const sky) (const tin)
(const velvet) (const grape) (const labia)
- (const berry) (const neutral) (const september)
- (const dino))
+ (const berry) (const neutral) (const september))
:group 'gnus-xmas)
(defvar gnus-xmas-logo-colors
(event-to-character event))
event)))
+(defun gnus-xmas-seconds-since-epoch (date)
+ "Return a floating point number that says how many seconds have lapsed between Jan 1 12:00:00 1970 and DATE."
+ (let* ((tdate (mapcar (lambda (ti) (and ti (string-to-int ti)))
+ (timezone-parse-date date)))
+ (ttime (mapcar (lambda (ti) (and ti (string-to-int ti)))
+ (timezone-parse-time
+ (aref (timezone-parse-date date) 3))))
+ (edate (mapcar (lambda (ti) (and ti (string-to-int ti)))
+ (timezone-parse-date "Jan 1 12:00:00 1970")))
+ (tday (- (timezone-absolute-from-gregorian
+ (nth 1 tdate) (nth 2 tdate) (nth 0 tdate))
+ (timezone-absolute-from-gregorian
+ (nth 1 edate) (nth 2 edate) (nth 0 edate)))))
+ (+ (nth 2 ttime)
+ (* (nth 1 ttime) 60)
+ (* (float (nth 0 ttime)) 60 60)
+ (* (float tday) 60 60 24))))
+
(defun gnus-xmas-define ()
(setq gnus-mouse-2 [button2])
(defvar gnus-mouse-face-prop 'highlight)
+ (unless (fboundp 'encode-time)
+ (defun encode-time (sec minute hour day month year &optional zone)
+ (let ((seconds
+ (gnus-xmas-seconds-since-epoch
+ (timezone-make-arpa-date
+ year month day (timezone-make-time-string hour minute sec)
+ zone))))
+ (list (floor (/ seconds (expt 2 16)))
+ (round (mod seconds (expt 2 16)))))))
+
(defun gnus-byte-code (func)
"Return a form that can be `eval'ed based on FUNC."
(let ((fval (indirect-function func)))
:link '(custom-manual "(gnus)Exiting Gnus")
:group 'gnus)
-(defconst gnus-version-number "0.17"
+(defconst gnus-version-number "5.6.43"
"Version number for this version of Gnus.")
-(defconst gnus-version (format "Pterodactyl Gnus v%s" gnus-version-number)
+(defconst gnus-version (format "Gnus v%s" gnus-version-number)
"Version string for this version of Gnus.")
(defcustom gnus-inhibit-startup-message nil
(defface gnus-splash-face
'((((class color)
(background dark))
- (:foreground "Brown"))
+ (:foreground "ForestGreen"))
(((class color)
(background light))
- (:foreground "Brown"))
+ (:foreground "ForestGreen"))
(t
()))
- "Face of the splash screen.")
+ "Level 1 newsgroup face.")
(defun gnus-splash ()
(save-excursion
(defcustom gnus-article-display-hook
(if (and (string-match "XEmacs" emacs-version)
(featurep 'xface))
- '(gnus-article-decode-charset
- gnus-article-decode-rfc1522
- gnus-article-hide-headers-if-wanted
+ '(gnus-article-hide-headers-if-wanted
gnus-article-hide-boring-headers
gnus-article-treat-overstrike
gnus-article-maybe-highlight
gnus-article-display-x-face)
- '(gnus-article-decode-charset
- gnus-article-decode-rfc1522
- gnus-article-hide-headers-if-wanted
+ '(gnus-article-hide-headers-if-wanted
gnus-article-hide-boring-headers
gnus-article-treat-overstrike
gnus-article-maybe-highlight))
\f
;;; Internal variables
-(defvar gnus-agent-meta-information-header "X-Gnus-Agent-Meta-Information")
(defvar gnus-group-get-parameter-function 'gnus-group-get-parameter)
(defvar gnus-original-article-buffer " *Original Article*")
(defvar gnus-newsgroup-name nil)
(cdr package)))))
'(("metamail" metamail-buffer)
("info" Info-goto-node)
+ ("hexl" hexl-hex-string-to-integer)
("pp" pp pp-to-string pp-eval-expression)
- ("qp" quoted-printable-decode-region quoted-printable-decode-string)
- ("rfc2047" rfc2047-decode-region rfc2047-decode-string)
("ps-print" ps-print-preprint)
("mail-extr" mail-extract-address-components)
("browse-url" browse-url)
("message" :interactive t
message-send-and-exit message-yank-original)
- ("nnmail" nnmail-split-fancy nnmail-article-group)
+ ("nnmail" nnmail-split-fancy nnmail-article-group nnmail-date-to-time)
("nnvirtual" nnvirtual-catchup-group nnvirtual-convert-headers)
+ ("timezone" timezone-make-date-arpa-standard timezone-fix-time
+ timezone-make-sortable-date timezone-make-time-string)
("rmailout" rmail-output)
("rmail" rmail-insert-rmail-file-header rmail-count-new-messages
- rmail-show-message rmail-output-to-rmail-file)
+ rmail-show-message)
("gnus-audio" :interactive t gnus-audio-play)
("gnus-xmas" gnus-xmas-splash)
("gnus-soup" :interactive t
gnus-article-treat-overstrike gnus-article-word-wrap
gnus-article-remove-cr gnus-article-remove-trailing-blank-lines
gnus-article-display-x-face gnus-article-de-quoted-unreadable
- gnus-article-hide-pgp
+ gnus-article-mime-decode-quoted-printable gnus-article-hide-pgp
gnus-article-hide-pem gnus-article-hide-signature
gnus-article-strip-leading-blank-lines gnus-article-date-local
gnus-article-date-original gnus-article-date-lapsed
(string-to-number
(if (zerop major)
(format "%s00%02d%02d"
- (if (member alpha '("(ding)" "d"))
- "4.99"
- (+ 5 (* 0.02
- (abs
- (- (mm-char-int (aref (downcase alpha) 0))
- (mm-char-int ?t))))
- -0.01))
+ (cond
+ ((member alpha '("(ding)" "d")) "4.99")
+ ((member alpha '("September" "s")) "5.01")
+ ((member alpha '("Red" "r")) "5.03")
+ ((member alpha '("Quassia" "q")) "5.05")
+ ((member alpha '("p")) "5.07")
+ ((member alpha '("o")) "5.09")
+ ((member alpha '("n")) "5.11"))
minor least)
(format "%d.%02d%02d" major minor least))))))
run-with-idle-timer mouse-minibuffer-check window-edges
event-click-count track-mouse read-event mouse-movement-p
event-end mouse-scroll-subr overlay-lists delete-overlay
- set-face-stipple mail-abbrevs-setup
+ set-face-stipple mail-abbrevs-setup char-int
make-char-table set-char-table-range font-create-object
x-color-values widget-make-intangible error-message-string
w3-form-encode-xwfu gnus-mule-get-coding-system
- decode-coding-string mail-aliases-setup
- mm-copy-tree url-view-url w3-prepare-buffer
- set-buffer-multibyte
- find-non-ascii-charset-region char-charset
- mule-write-region-no-coding-system
- find-charset-region base64-decode-string))
+ decode-coding-string mail-aliases-setup))
(maybe-bind '(global-face-data
mark-active transient-mark-mode mouse-selection-click-count
mouse-selection-click-count-buffer buffer-display-table
font-lock-defaults user-full-name user-login-name
gnus-newsgroup-name gnus-article-x-face-too-ugly
mail-mode-hook enable-multibyte-characters
- adaptive-fill-first-line-regexp adaptive-fill-regexp
- url-current-mime-headers buffer-file-coding-system)))
+ adaptive-fill-first-line-regexp adaptive-fill-regexp)))
(maybe-bind '(mail-mode-hook
enable-multibyte-characters browse-url-browser-function
- adaptive-fill-first-line-regexp adaptive-fill-regexp
- url-current-mime-headers))
+ adaptive-fill-first-line-regexp adaptive-fill-regexp))
(maybe-fbind '(color-instance-rgb-components
make-color-instance color-instance-name specifier-instance
device-type device-class get-popup-menu-response event-object
device-on-window-system-p make-gui-button Info-goto-node
pp-to-string color-name
gnus-mule-get-coding-system decode-coding-string
- mail-aliases-setup
- mm-copy-tree url-view-url w3-prepare-buffer
- mule-write-region-no-coding-system char-int)))
+ mail-aliases-setup)))
(setq load-path (cons "." load-path))
(require 'custom)
(require 'mailheader)
(require 'nnheader)
+(require 'timezone)
(require 'easymenu)
(require 'custom)
(if (string-match "XEmacs\\|Lucid" emacs-version)
(require 'mail-abbrevs)
(require 'mailabbrev))
-(require 'rfc2047)
-(require 'mm-bodies)
(defgroup message '((user-mail-address custom-variable)
(user-full-name custom-variable))
;;; Internal variables.
-(defvar message-default-charset nil)
(defvar message-buffer-list nil)
(defvar message-this-is-news nil)
(defvar message-this-is-mail nil)
(autoload 'gnus-point-at-eol "gnus-util")
(autoload 'gnus-point-at-bol "gnus-util")
(autoload 'gnus-output-to-mail "gnus-util")
+ (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")
(when (and (file-exists-p file)
(file-readable-p file)
(file-regular-p file))
- (with-temp-buffer
+ (nnheader-temp-write nil
(nnheader-insert-file-contents file)
(goto-char (point-min))
(looking-at message-unix-mail-delimiter))))
(when value
(nnheader-replace-chars-in-string value ?\n ? ))))
-(defun message-narrow-to-field ()
- "Narrow the buffer to the header on the current line."
- (beginning-of-line)
- (narrow-to-region
- (point)
- (progn
- (forward-line 1)
- (if (re-search-forward "^[^ \n\t]" nil t)
- (progn
- (beginning-of-line)
- (point))
- (point-max))))
- (goto-char (point-min)))
-
(defun message-add-header (&rest headers)
"Add the HEADERS to the message header, skipping those already present."
(while headers
(erase-buffer))
(set-buffer (get-buffer-create " *message work*"))
(kill-all-local-variables)
- (mm-enable-multibyte)))
+ (buffer-disable-undo (current-buffer))))
(defun message-functionp (form)
"Return non-nil if FORM is funcallable."
(goto-char (point-min)))
(defun message-narrow-to-head ()
- "Narrow the buffer to the head of the message.
-Point is left at the beginning of the narrowed-to region."
+ "Narrow the buffer to the head of the message."
(widen)
(narrow-to-region
(goto-char (point-min))
(setq adaptive-fill-first-line-regexp
(concat "[ \t]*[-a-z0-9A-Z]*>+[ \t]*\\|"
adaptive-fill-first-line-regexp))
- (mm-enable-multibyte)
(run-hooks 'text-mode-hook 'message-mode-hook))
\f
;; Then we translate the region. Do it this way to retain
;; text properties.
(while (< b e)
- (when (< (char-after b) 255)
- (subst-char-in-region
- b (1+ b) (char-after b)
- (aref message-caesar-translation-table (char-after b))))
+ (subst-char-in-region
+ b (1+ b) (char-after b)
+ (aref message-caesar-translation-table (char-after b)))
(incf b))))
(defun message-make-caesar-translation-table (n)
(let ((message-deletable-headers
(if news nil message-deletable-headers)))
(message-generate-headers message-required-mail-headers))
- (rfc2047-encode-message-header)
;; Let the user do all of the above.
(run-hooks 'message-header-hook))
- (message-encode-message-body)
(unwind-protect
(save-excursion
(set-buffer tembuf)
(message-narrow-to-headers)
;; Insert some headers.
(message-generate-headers message-required-news-headers)
- (rfc2047-encode-message-header)
;; Let the user do all of the above.
(run-hooks 'message-header-hook))
- (message-encode-message-body)
(message-cleanup-headers)
(if (not (message-check-news-syntax))
(progn
(y-or-n-p "Empty article. Really post? "))))
;; Check for control characters.
(message-check 'control-chars
- (if (re-search-forward "[\000-\007\013\015-\032\034-\037\200-\237]" nil t)
+ (if (re-search-forward "[\000-\007\013\015-\037\200-\237]" nil t)
(y-or-n-p
"The article contains control characters. Really post? ")
t))
"Append this article to Unix/babyl mail file.."
(if (and (file-readable-p filename)
(mail-file-babyl-p filename))
- (rmail-output-to-rmail-file filename t)
+ (gnus-output-to-rmail filename t)
(gnus-output-to-mail filename t)))
(defun message-cleanup-headers ()
(when (re-search-forward ",+$" nil t)
(replace-match "" t t))))))
-(defun message-make-date (&optional now)
- "Make a valid data header.
-If NOW, use that time instead."
- (format-time-string "%d %b %Y %H:%M:%S %z" (or now (current-time))))
+(defun message-make-date ()
+ "Make a valid data header."
+ (let ((now (current-time)))
+ (timezone-make-date-arpa-standard
+ (current-time-string now) (current-time-zone now))))
(defun message-make-message-id ()
"Make a unique Message-ID."
;; Add the future to current.
(setcar current (+ (car current) (round (/ future (expt 2 16)))))
(setcar (cdr current) (+ (nth 1 current) (% (round future) (expt 2 16))))
- (message-make-date current)))
+ ;; Return the date in the future in UT.
+ (timezone-make-date-arpa-standard
+ (current-time-string current) (current-time-zone current) '(0 "UT"))))
(defun message-make-path ()
"Return uucp path."
(let ((max 988)
(cut 4)
refs)
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert references)
(goto-char (point-min))
(while (re-search-forward "<[^>]+>" nil t)
(defun message-wash-subject (subject)
"Remove junk like \"Re:\", \"(fwd)\", etc. that was added to the subject by previous forwarders, replyers, etc."
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-string subject)
(goto-char (point-min))
;; strip Re/Fwd stuff off the beginning
(setq idx (1+ idx)))
string))
-;;;
-;;; MIME functions
-;;;
-
-(defun message-encode-message-body ()
- "Examine the message body, encode it, and add the requisite headers."
- (when (featurep 'mule)
- (save-excursion
- (save-restriction
- (message-narrow-to-headers)
- (message-remove-header
- "^Content-Transfer-Encoding:\\|^Content-Type:\\|^Mime-Version:" t)
- (goto-char (point-max))
- (widen)
- (narrow-to-region (point) (point-max))
- (let* ((charset (mm-encode-body))
- (encoding (mm-body-encoding)))
- (when (consp charset)
- (error "Can't encode messages with multiple charsets (yet)"))
- (widen)
- (message-narrow-to-headers)
- (goto-char (point-max))
- (setq charset (or charset (mm-mule-charset-to-mime-charset 'ascii)))
- ;; We don't insert MIME headers if they only say the default.
- (unless (and (eq charset 'ascii)
- (eq encoding '7bit))
- (mm-insert-rfc822-headers charset encoding))
- (mm-encode-body))))))
-
(run-hooks 'message-load-hook)
(provide 'message)
"Create a rot table with offset N."
(let ((i -1)
(table (make-string 256 0))
- (a (mm-char-int ?a))
- (A (mm-char-int ?A)))
+ (a (char-int ?a))
+ (A (char-int ?A)))
(while (< (incf i) 256)
(aset table i i))
(concat
(autoload 'cancel-timer "timer")
(autoload 'telnet "telnet" nil t)
(autoload 'telnet-send-input "telnet" nil t)
+ (autoload 'timezone-parse-date "timezone")
(autoload 'gnus-declare-backend "gnus-start"))
;; Declare nndb as derived from nntp
msg))
(if (nnmail-expired-article-p
group
- (date-to-time (substring msg (match-beginning 1) (match-end 1)))
+ (gnus-encode-date
+ (substring msg (match-beginning 1) (match-end 1)))
force)
(progn
(setq delete-list (concat delete-list " " (int-to-string art)))
(let ((gnus-verbose-backends nil)
(buf (current-buffer))
article file)
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer buf)
(setq article (nndraft-request-accept-article
group (nnoo-current-server 'nndraft) t 'noinsert))
\f
+(autoload 'gnus-encode-coding-string "gnus-ems")
+
;;; Interface functions.
(nnoo-define-basics nneething)
(setq files (cdr files)))
(when (and touched
(not nneething-read-only))
- (with-temp-file map-file
+ (nnheader-temp-write map-file
(insert "(setq nneething-map '")
(gnus-prin1 nneething-map)
(insert ")\n(setq nneething-active '")
"Delete the message that point is in.
If optional argument LEAVE-DELIM is t, then mailbox delimiter is not
deleted. Point is left where the deleted region was."
- (save-restriction
- (narrow-to-region
- (save-excursion
- (forward-line 1) ; in case point is at beginning of message already
- (nnmail-search-unix-mail-delim-backward)
- (if leave-delim (progn (forward-line 1) (point))
- (point)))
- (progn
- (forward-line 1)
- (if (nnmail-search-unix-mail-delim)
- (point)
- (point-max))))
- (run-hooks 'nnfolder-delete-mail-hook)
- (delete-region (point-min) (point-max))))
+ (delete-region
+ (save-excursion
+ (forward-line 1) ; in case point is at beginning of message already
+ (nnmail-search-unix-mail-delim-backward)
+ (if leave-delim (progn (forward-line 1) (point))
+ (point)))
+ (progn
+ (forward-line 1)
+ (if (nnmail-search-unix-mail-delim)
+ (point)
+ (point-max)))))
(defun nnfolder-possibly-change-group (group &optional server dont-check)
;; Change servers.
(defun nnfolder-group-pathname (group)
"Make pathname for GROUP."
- (setq group
- (nnheader-encode-coding-string group nnmail-pathname-coding-system))
+ (setq group (gnus-encode-coding-string group nnmail-pathname-coding-system))
(let ((dir (file-name-as-directory (expand-file-name nnfolder-directory))))
;; If this file exists, we use it directly.
(if (or nnmail-use-long-file-names
(nngateway-open-server server))
;; Rewrite the header.
(let ((buf (current-buffer)))
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-buffer-substring buf)
(message-narrow-to-head)
(funcall nngateway-header-transformation nngateway-address)
(autoload 'cancel-function-timers "timers")
(autoload 'gnus-point-at-eol "gnus-util")
(autoload 'gnus-delete-line "gnus-util")
- (autoload 'gnus-buffer-live-p "gnus-util"))
+ (autoload 'gnus-buffer-live-p "gnus-util")
+ (autoload 'gnus-encode-coding-string "gnus-ems"))
;;; Header access macros.
(erase-buffer))
(current-buffer))
+(defmacro nnheader-temp-write (file &rest forms)
+ "Create a new buffer, evaluate FORMS there, and write the buffer to FILE.
+Return the value of FORMS.
+If FILE is nil, just evaluate FORMS and don't save anything.
+If FILE is t, return the buffer contents as a string."
+ (let ((temp-file (make-symbol "temp-file"))
+ (temp-buffer (make-symbol "temp-buffer"))
+ (temp-results (make-symbol "temp-results")))
+ `(save-excursion
+ (let* ((,temp-file ,file)
+ (default-major-mode 'fundamental-mode)
+ (,temp-buffer
+ (set-buffer
+ (get-buffer-create
+ (generate-new-buffer-name " *nnheader temp*"))))
+ ,temp-results)
+ (unwind-protect
+ (progn
+ (setq ,temp-results (progn ,@forms))
+ (cond
+ ;; Don't save anything.
+ ((null ,temp-file)
+ ,temp-results)
+ ;; Return the buffer contents.
+ ((eq ,temp-file t)
+ (set-buffer ,temp-buffer)
+ (buffer-string))
+ ;; Save a file.
+ (t
+ (set-buffer ,temp-buffer)
+ ;; Make sure the directory where this file is
+ ;; to be saved exists.
+ (when (not (file-directory-p
+ (file-name-directory ,temp-file)))
+ (make-directory (file-name-directory ,temp-file) t))
+ ;; Save the file.
+ (write-region (point-min) (point-max)
+ ,temp-file nil 'nomesg)
+ ,temp-results)))
+ ;; Kill the buffer.
+ (when (buffer-name ,temp-buffer)
+ (kill-buffer ,temp-buffer)))))))
+
+(put 'nnheader-temp-write 'lisp-indent-function 1)
+(put 'nnheader-temp-write 'edebug-form-spec '(form body))
+
(defvar jka-compr-compression-info-list)
(defvar nnheader-numerical-files
(if (boundp 'jka-compr-compression-info-list)
(concat dir group "/")
;; If not, we translate dots into slashes.
(concat dir
- (nnheader-encode-coding-string
+ (gnus-encode-coding-string
(nnheader-replace-chars-in-string group ?. ?/)
nnheader-pathname-coding-system)
"/")))
(fset 'nnheader-cancel-timer 'cancel-timer)
(fset 'nnheader-cancel-function-timers 'cancel-function-timers)
-(if (fboundp 'encode-coding-string)
- (fset 'nnheader-encode-coding-string 'encode-coding-string)
- (fset 'nnheader-encode-coding-string (lambda (s a) s)))
-
-(if (fboundp 'decode-coding-string)
- (fset 'nnheader-decode-coding-string 'decode-coding-string)
- (fset 'nnheader-decode-coding-string (lambda (s a) s)))
-
(when (string-match "XEmacs\\|Lucid" emacs-version)
(require 'nnheaderxm))
;; Remove NOV lines of articles that are marked as read.
(when (and (file-exists-p (nnkiboze-nov-file-name))
nnkiboze-remove-read-articles)
- (with-temp-file (nnkiboze-nov-file-name)
+ (nnheader-temp-write (nnkiboze-nov-file-name)
(let ((cur (current-buffer)))
(nnheader-insert-file-contents (nnkiboze-nov-file-name))
(goto-char (point-min))
;; Load the kiboze newsrc file for this group.
(when (file-exists-p newsrc-file)
(load newsrc-file))
- (with-temp-file nov-file
+ (nnheader-temp-write nov-file
(when (file-exists-p nov-file)
(insert-file-contents nov-file))
(setq nov-buffer (current-buffer))
(gnus-message 3 "nnkiboze: Checking %s...done" (caar newsrc))
(setq newsrc (cdr newsrc))))
;; We save the kiboze newsrc for this group.
- (with-temp-file newsrc-file
+ (nnheader-temp-write newsrc-file
(insert "(setq nnkiboze-newsrc '")
(gnus-prin1 nnkiboze-newsrc)
(insert ")\n")))
(eval-when-compile (require 'cl))
(require 'nnheader)
+(require 'timezone)
(require 'message)
(require 'custom)
(require 'gnus-util)
(eval-and-compile
(autoload 'gnus-error "gnus-util")
- (autoload 'gnus-buffer-live-p "gnus-util"))
+ (autoload 'gnus-buffer-live-p "gnus-util")
+ (autoload 'gnus-encode-coding-string "gnus-ems"))
(defgroup nnmail nil
"Reading mail with Gnus."
:group 'nnmail-split
:type '(repeat (cons :format "%v" symbol regexp)))
-(defcustom nnmail-delete-incoming nil
+(defcustom nnmail-delete-incoming t
"*If non-nil, the mail backends will delete incoming files after
splitting."
:group 'nnmail-retrieve
(defun nnmail-request-post (&optional server)
(mail-send-and-exit nil))
-(defvar nnmail-file-coding-system 'binary
+(defvar nnmail-file-coding-system 'raw-text
"Coding system used in nnmail.")
(defun nnmail-find-file (file)
(after-insert-file-functions nil))
(condition-case ()
(let ((coding-system-for-read nnmail-file-coding-system)
- (pathname-coding-system nnmail-file-coding-system))
+ (pathname-coding-system 'binary))
(insert-file-contents file)
t)
(file-error nil))))
(concat dir group "/")
;; If not, we translate dots into slashes.
(concat dir
- (nnheader-encode-coding-string
+ (gnus-encode-coding-string
(nnheader-replace-chars-in-string group ?. ?/)
nnmail-pathname-coding-system)
"/")))
(or file "")))
+(defun nnmail-date-to-time (date)
+ "Convert DATE into time."
+ (condition-case ()
+ (let* ((d1 (timezone-parse-date date))
+ (t1 (timezone-parse-time (aref d1 3))))
+ (apply 'encode-time
+ (mapcar (lambda (el)
+ (and el (string-to-number el)))
+ (list
+ (aref t1 2) (aref t1 1) (aref t1 0)
+ (aref d1 2) (aref d1 1) (aref d1 0)
+ (number-to-string
+ (* 60 (timezone-zone-to-minute
+ (or (aref d1 4) (current-time-zone)))))))))
+ ;; If we get an error, then we just return a 0 time.
+ (error (list 0 0))))
+
+(defun nnmail-time-less (t1 t2)
+ "Say whether time T1 is less than time T2."
+ (or (< (car t1) (car t2))
+ (and (= (car t1) (car t2))
+ (< (nth 1 t1) (nth 1 t2)))))
+
+(defun nnmail-days-to-time (days)
+ "Convert DAYS into time."
+ (let* ((seconds (* 1.0 days 60 60 24))
+ (rest (expt 2 16))
+ (ms (condition-case nil (floor (/ seconds rest))
+ (range-error (expt 2 16)))))
+ (list ms (condition-case nil (round (- seconds (* ms rest)))
+ (range-error (expt 2 16))))))
+
+(defun nnmail-time-since (time)
+ "Return the time since TIME, which is either an internal time or a date."
+ (when (stringp time)
+ ;; Convert date strings to internal time.
+ (setq time (nnmail-date-to-time time)))
+ (let* ((current (current-time))
+ (rest (when (< (nth 1 current) (nth 1 time))
+ (expt 2 16))))
+ (list (- (+ (car current) (if rest -1 0)) (car time))
+ (- (+ (or rest 0) (nth 1 current)) (nth 1 time)))))
+
;; Function rewritten from rmail.el.
(defun nnmail-move-inbox (inbox)
"Move INBOX to `nnmail-crash-box'."
"Save GROUP-ASSOC in ACTIVE-FILE."
(let ((coding-system-for-write nnmail-active-file-coding-system))
(when file-name
- (with-temp-file file-name
+ (nnheader-temp-write file-name
(nnmail-generate-active group-assoc)))))
(defun nnmail-generate-active (alist)
(insert (format "Xref: %s" (system-name)))
(while group-alist
(insert (format " %s:%d"
- (nnheader-encode-coding-string
- (caar group-alist)
- nnmail-pathname-coding-system)
+ (gnus-encode-coding-string (caar group-alist)
+ nnmail-pathname-coding-system)
(cdar group-alist)))
(setq group-alist (cdr group-alist)))
(insert "\n"))))
;; This is an ange-ftp group, and we don't have any dates.
nil)
((numberp days)
- (setq days (days-to-time days))
+ (setq days (nnmail-days-to-time days))
;; Compare the time with the current time.
- (time-less-p days (time-since time)))))))
+ (nnmail-time-less days (nnmail-time-since time)))))))
(defvar nnmail-read-passwd nil)
(defun nnmail-read-passwd (prompt &rest args)
(expand-file-name nnmh-toplev))))
dir)
(nnheader-replace-chars-in-string
- (nnheader-decode-coding-string (substring dir (match-end 0))
- nnmail-pathname-coding-system)
+ (gnus-decode-coding-string (substring dir (match-end 0))
+ nnmail-pathname-coding-system)
?/ ?.))
(apply 'max files)
(apply 'min files)))))))
(setq articles (sort articles (lambda (art1 art2)
(> (car art1) (car art2)))))
;; Finally write this list back to the .nnmh-articles file.
- (with-temp-file nnmh-file
+ (nnheader-temp-write nnmh-file
(insert ";; Gnus article active file for " group "\n\n")
(insert "(setq nnmh-newsgroup-articles '")
(gnus-prin1 articles)
(deffoo nnml-request-list (&optional server)
(save-excursion
(let ((nnmail-file-coding-system nnmail-active-file-coding-system)
- (pathname-coding-system 'binary))
- (nnmail-find-file nnml-active-file))
+ (pathname-coding-system 'binary)) ; for XEmacs/mule
+ (nnmail-find-file nnml-active-file)
+ )
(setq nnml-group-alist (nnmail-get-active))
t))
((not (file-exists-p file))
(nnheader-report 'nnml "File %s does not exist" file))
(t
- (with-temp-file file
+ (nnheader-temp-write file
(nnheader-insert-file-contents file)
(nnmail-replace-status name value))
t))))
(or force
nnsoup-group-alist-touched))
(setq nnsoup-group-alist-touched nil)
- (with-temp-file nnsoup-active-file
+ (nnheader-temp-write nnsoup-active-file
(gnus-prin1 `(setq nnsoup-group-alist ',nnsoup-group-alist))
(insert "\n")
(gnus-prin1 `(setq nnsoup-current-prefix ,nnsoup-current-prefix))
(require 'nnheader)
(require 'nntp)
+(require 'timezone)
(require 'nnoo)
(eval-when-compile (require 'cl))
(while (and (not (looking-at
"\\([^ ]+\\) +\\([0-9]+\\)[0-9][0-9][0-9] "))
(zerop (forward-line -1))))
- (let ((seconds (time-to-float (date-to-time date)))
+ (let ((seconds (nnspool-seconds-since-epoch date))
groups)
;; Go through lines and add the latest groups to a list.
(while (and (looking-at "\\([^ ]+\\) +[0-9]+ ")
"Find the path for GROUP."
(nnheader-group-pathname group nnspool-spool-directory article))
+(defun nnspool-seconds-since-epoch (date)
+ (let* ((tdate (mapcar (lambda (ti) (and ti (string-to-int ti)))
+ (timezone-parse-date date)))
+ (ttime (mapcar (lambda (ti) (and ti (string-to-int ti)))
+ (timezone-parse-time
+ (aref (timezone-parse-date date) 3))))
+ (unix (encode-time (nth 2 ttime) (nth 1 ttime) (nth 0 ttime)
+ (nth 2 tdate) (nth 1 tdate) (nth 0 tdate)
+ (nth 4 tdate))))
+ (+ (* (car unix) 65536.0)
+ (cadr unix))))
+
(provide 'nnspool)
;;; nnspool.el ends here
(nnoo-declare nntp)
+(eval-and-compile
+ (unless (fboundp 'open-network-stream)
+ (require 'tcp)))
+
(eval-when-compile (require 'cl))
(defvoo nntp-address nil
(prog1
(nntp-send-command
"^\\.\r?\n" "NEWGROUPS"
- (format-time-string "%y%m%d %H%M%S" (date-to-time date)))
+ (format-time-string "%y%m%d %H%M%S" (nnmail-date-to-time date)))
(nntp-decode-text))))
(deffoo nntp-request-post (&optional server)
The authinfo login name is taken from the user's login name and the
password contained in '~/.nntp-authinfo'."
(when (file-exists-p "~/.nntp-authinfo")
- (with-temp-buffer
+ (nnheader-temp-write nil
(insert-file-contents "~/.nntp-authinfo")
(goto-char (point-min))
(nntp-send-command "^3.*\r?\n" "AUTHINFO USER" (user-login-name))
(defun nnweb-read-overview (group)
"Read the overview of GROUP and build the map."
(when (file-exists-p (nnweb-overview-file group))
- (with-temp-buffer
+ (nnheader-temp-write nil
(nnheader-insert-file-contents (nnweb-overview-file group))
(goto-char (point-min))
(let (header)
(defun nnweb-write-overview (group)
"Write the overview file for GROUP."
- (with-temp-file (nnweb-overview-file group)
+ (nnheader-temp-write (nnweb-overview-file group)
(let ((articles nnweb-articles))
(while articles
(nnheader-insert-nov (cadr (pop articles)))))))
(defun nnweb-write-active ()
"Save the active file."
- (with-temp-file (nnheader-concat nnweb-directory "active")
+ (nnheader-temp-write (nnheader-concat nnweb-directory "active")
(prin1 `(setq nnweb-group-alist ',nnweb-group-alist) (current-buffer))))
(defun nnweb-read-active ()
;;; Code:
(require 'easymenu)
+(require 'timezone)
(eval-when-compile (require 'cl))
(defvar gnus-score-mode-hook nil
table)
"Syntax table used in score-mode buffers.")
-(defvar score-mode-coding-system 'binary)
-
;;;###autoload
(defun gnus-score-mode ()
"Mode for editing Gnus score files.
(defun gnus-score-edit-insert-date ()
"Insert date in numerical format."
(interactive)
- (princ (time-to-day (current-time)) (current-buffer)))
+ (princ (gnus-score-day-number (current-time)) (current-buffer)))
(defun gnus-score-pretty-print ()
"Format the current score file."
(interactive)
(unless (file-exists-p (file-name-directory (buffer-file-name)))
(make-directory (file-name-directory (buffer-file-name)) t))
- (let ((coding-system-for-write score-mode-coding-system))
- (save-buffer))
+ (save-buffer)
(bury-buffer (current-buffer))
(let ((buf (current-buffer)))
(when gnus-score-edit-exit-function
(when (eq buf (current-buffer))
(switch-to-buffer (other-buffer (current-buffer))))))
+(defun gnus-score-day-number (time)
+ (let ((dat (decode-time time)))
+ (timezone-absolute-from-gregorian
+ (nth 4 dat) (nth 3 dat) (nth 5 dat))))
+
(provide 'score-mode)
;;; score-mode.el ends here
-1998-09-05 17:36:14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+1998-08-27 07:29:17 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Mail Folders): Addition.
- * gnus.texi (Sorting Groups): Change.
- (Various Summary Stuff): Addition.
+1998-08-25 08:06:28 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-09-04 00:40:07 David S. Goldberg <dsg@mitre.org>
+ * gnus.texi (Posting Styles): Document this-is.
+ (Virtual Groups): Addition.
- * gnus.texi (Article Hiding): Verify.
+1998-08-18 00:30:05 Lars Magne Ingebrigtsen <larsi@gnus.org>
-1998-08-31 11:46:57 Lars Magne Ingebrigtsen <larsi@gnus.org>
+ * gnus.texi (Article Hiding): Addition.
- * gnus.texi (Mail Folders): Addition.
+1998-08-16 14:53:45 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (NNTP): Reinstated.
+ (Asynchronous Fetching): No header prefetch.
+
+1998-08-15 13:01:41 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Summary Score Commands): Change.
+
+1998-08-14 01:31:36 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus.texi (Posting Styles): New 'body style.
+
+1998-08-13 21:17:00 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Paging the Article): Addition.
+
+1998-08-13 00:13:47 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus.texi (Mail Group Commands): Typo.
+
+1998-08-12 21:28:09 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus.texi (Article Caching): gnus-cacheable-groups.
+ (Newest Features): remove gnus-cacheable-groups.
+
+1998-08-12 22:01:12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * message.texi (Forwarding): Addition.
+
+1998-08-11 20:33:53 Justin Zaglio <justin@caxton.com>
+
+ * gnus.texi (Group Maintenance): Fix.
+
+1998-08-11 11:44:20 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Group Maintenance): Fix.
+
+1998-08-10 08:59:25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Article Highlighting): Addition.
+ (Article Fontisizing): Fix.
+ (Article Hiding): Change.
+ (Article Hiding): Fix.
+
+1998-08-09 15:32:24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Hiding Headers): Fix.
+ (Article Hiding): Addition.
+ (Document Groups): Addition.
+
+1998-08-08 06:06:37 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Fancy Mail Splitting): Change.
+
+1998-08-06 02:12:04 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi: De-legalize.
+
+ * message.texi: De-legalize.
+
+ * gnus.texi (Summary Maneuvering): Fix.
+
+1998-07-21 17:51 Simon Josefsson <jas@pdc.kth.se>
+
+ * gnus.texi (Splitting Mail): junk is fancy splitting only
+
+ * gnus.texi (Fancy Mail Splitting): warn about junk
+
+1998-07-27 02:28:33 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Topic Commands): Fix.
+
+1998-07-27 02:23:17 Robert Bihlmeyer <robbe@orcus.priv.at>
+
+ * gnus.texi (Score Decays): Fix.
+
+Sun Jul 12 04:03:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Home Score File): Addition.
+
+Fri Jul 10 04:26:23 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+
+Sat Jul 4 14:24:29 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Gnus Utility Functions): Addition.
+
+Thu Jul 2 11:37:51 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Posting Styles): Ununcommented.
+
+Wed Jul 1 17:57:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Topic Commands): Addition.
+
+Tue Jun 30 16:11:27 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Topic Commands): Addition.
+
+Mon Jun 29 21:46:13 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Keymap): Typo.
+
+Sun Jun 28 17:41:10 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Formatting Fonts): Typo fix.
+
+Sat Jun 27 04:37:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mail-To-News Gateways): Addition.
+ (Mail-To-News Gateways): Typo.
+
+Fri Jun 26 13:33:00 1998 Yoshiki Hayashi <g740685@komaba.ecc.u-tokyo.ac.jp>
+
+ * gnus.texi (Summary Buffer Lines): Typo fix.
+
+Fri Jun 26 05:53:22 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Score File Format): Addition.
+ (Mode Line Formatting): New.
+ (Summary Buffer Mode Line): Addition.
+
+Thu Jun 25 11:24:14 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Summary Score Commands): Deletia.
+
+Wed Jun 24 00:37:32 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Auto Save): Addition.
+ (Mail-To-News Gateways): Addition.
+ (NNTP): Addition.
+
+Wed Jun 3 03:30:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Message Headers): Addition.
+
+ * gnus.texi (Compatibility): Addition.
+
+Tue May 19 02:44:31 1998 Mike Pullen <mpullen@midwest.net>
+
+ * gnus.texi.orig: Typo fixes.
+
+Wed Apr 29 21:52:28 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Key Index): Untabified.
+ (Group Parameters): Fix.
+
+Sun Apr 26 15:32:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Summary Post Commands): Ref to Message.
+
+ * message.texi (Various Message Variables): Deletia.
+
+Fri Apr 24 16:00:40 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Unread Articles): Typo.
+ (Summary Buffer Lines): Fix.
+ (Foreign Groups): Addition.
+ (Posting Server): Addition.
+
+Sat Mar 28 08:57:46 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Example Methods): Addition.
+
+Thu Mar 26 15:47:54 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Limiting): Mention `/ *'.
+
+Thu Mar 19 13:02:20 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+ Removed spurious white space.
+
+Fri Mar 13 21:05:47 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Quassia Gnus): Fix.
+ (Agent Expiry): Addition.
+
+Sun Mar 8 13:56:37 1998 James Troup <J.J.Troup@scm.brad.ac.uk>
+
+ * gnus.texi (Group Highlighting): Removed old example.
+
+Sun Mar 8 00:19:24 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Info): Fix ".".
+
+Sat Mar 7 17:09:49 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi: Took direntries out again, since makeinfo doesn't
+ understand them.
+ (Agent Expiry): New.
+ (Quassia Gnus): New.
+
+Sat Mar 7 16:14:10 1998 Dan Christensen <jdc@chow.mat.jhu.edu>
+
+ * gnus.texi (Group Parameters): Mention add-to-list.
+
+Sat Feb 28 14:21:12 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+
+1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus.texi (Easy Picons): Removed references to
+ `gnus-group-display-picons'.
+ (Hard Picons): Ditto.
+
+1998-03-01 Kim-Minh Kaplan <KimMinh.Kaplan@utopia.eunet.fr>
+
+ * gnus.texi (Easy Picons): Removed references to
+ `gnus-group-display-picons'.
+ (Hard Picons): Ditto.
+
+Mon Feb 23 18:05:09 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi: Direntry not handled by Emacs 19.34.
+
+1998-02-21 SL Baur <steve@altair.xemacs.org>
+
+ * gnus.texi: Add a direntry field.
+ * message.texi: Ditto. (Data taken from Emacs 20.2 info/dir).
+
+Sun Feb 22 03:24:43 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Score File Format): Addition.
+
+1998-02-18 Jason R Mastaler <jason@4b.org>
+
+ * gnus.texi: Corrected typo.
+
+Thu Feb 19 02:20:29 1998 Francois Felix Ingrand <felix@laas.fr>
+
+ * gnus.texi (Sorting): Fix order of args.
+
+Sun Feb 15 23:04:02 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Change.
+
+Sat Feb 14 17:46:33 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Virtual Groups): Fix.
+ (NNTP): Addition.
+ (Really Various Summary Commands): Addition.
+
+Fri Feb 13 18:23:19 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mail Group Commands): Typo.
+ (NNTP): Addition.
+ (Mail and Procmail): Addition.
+
+Mon Feb 9 16:30:30 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Date): Addition.
+
+Sun Feb 8 16:28:35 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Newest Features): Addition.
+
+Mon Feb 2 19:21:43 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Agent Variables): Addition.
+
+Sun Feb 1 18:08:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Using MIME): Addition.
+
+Tue Jan 6 07:22:41 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Batching Agents): New.
+
+1998-01-04 Christoph Wedler <wedler@fmi.uni-passau.de>
+
+ * gnus.texi (Newest Features): Delete spaces after @end example.
+ In XEmacs, `texinfo-format-buffer' would bug out.
+
+Sun Jan 4 12:04:45 1998 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Conformity): Removed GNKSA.
+
+Sun Dec 14 11:06:23 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Adaptive Scoring): Addition.
+
+1997-11-26 SL Baur <steve@altair.xemacs.org>
+
+ * message.texi (Insertion): Fix typo.
+ (Responses): Ditto.
+ (Reply): Ditto.
+
+Wed Nov 26 12:57:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Insertion): Addition.
+
+Wed Nov 26 12:55:15 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * message.texi (Insertion): Addition.
+
+Wed Nov 26 12:36:08 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Responses): New.
+ (Appendices): New.
+
+ * gnus.texi (Group Info): Fix.
+
+Tue Nov 25 17:53:55 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Date): Addition.
+
+Mon Nov 24 16:01:20 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Faces & Fonts): New.
+
+Mon Oct 13 00:08:06 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Agent Commands): Addition.
+
+Sun Oct 12 16:50:23 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Washing): Addition.
+ (Group Highlighting): New.
+ (Canceling and Superseding): Addition.
+
+Wed Oct 1 18:37:55 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Startup Files): Addition.
+
+Sat Sep 27 09:37:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Sending Variables): Fix.
+
+ * gnus.texi (Choosing Commands): Addition.
+
+Sat Sep 27 05:56:44 1997 Hallvard B. Furuseth <h.b.furuseth@usit.uio.no>
+
+ * gnus.texi: Various fixes.
+
+Sat Sep 27 04:24:41 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Various Commands): Addition.
+
+Wed Sep 24 02:38:21 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Example Setup): Wrong info.
+ (SOUP Groups): Addition.
+ (Contributors): Addition.
+
+1997-09-22 SL Baur <steve@altair.xemacs.org>
+
+ * gnus.texi (Finding the Parent): Fix typo.
+ (NoCeM): Fix typos.
+
+Tue Sep 23 07:05:48 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NoCeM): Addition.
+ (Finding the Parent): Addition.
+
+Mon Sep 22 06:13:00 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Filling In Threads): Addition.
+ (Finding the Parent): Addition.
+
+Sun Sep 21 04:35:56 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+ (Hiding Headers): Addition.
+ (Symbolic Prefixes): New.
+ (Extended Interactive): New.
+ (Summary Score Commands): Addition.
+
+Sat Sep 20 20:53:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Startup Variables): Addition.
+
+1997-09-16 SL Baur <steve@altair.xemacs.org>
+
+ * gnus.texi: Correct typo.
+
+Wed Sep 17 02:32:56 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Customizing Threading): Broken up into five nodes.
+ (Article Washing): Addition.
+
+ * message.texi (Various Commands): Add.
+
+Tue Sep 16 04:04:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Example Setup): New.
+
+Mon Sep 15 23:10:05 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Customizing Threading): Addition.
+
+Sun Sep 14 21:59:07 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Outgoing Messages): New.
+ (Score File Format): Note.
+ (Subscription Methods): Fix.
+ (Starting Up): Fix.
+ (Threading): Add.
+
+Sat Jul 19 23:02:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Followups To Yourself): \\(_-_\\)?
+
+Sat Jul 12 16:29:35 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Picon Configuration): Moved Picons to under XEmacs.
+ (Smileys): New section.
+
+Fri Jul 11 11:58:20 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+
+Tue Jun 17 23:52:17 1997 Justin Sheehy <dworkin@ccs.neu.edu>
+
+ * gnus.texi (Group Parameters): Addition.
+
+Sun May 25 14:40:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Expiring Mail): Addition.
+
+Sat May 24 05:26:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Score File Format): Update.
+
+Tue May 20 21:56:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Document Server Internals): Typo.
+
+Sun May 18 05:59:24 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Topic Commands): Addition.
+
+Sun May 11 20:09:24 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Hiding): Change.
+
+Thu May 8 23:48:36 1997 James Troup <J.J.Troup@comp.brad.ac.uk>
+
+ * gnus.texi (Saving Articles): Typo.
+
+Wed May 7 19:00:48 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Saving Articles): Addition.
+
+Wed May 7 19:00:43 1997 Mark Boyns <boyns@sdsu.edu>
+
+ * gnus.texi (Saving Articles): Addition.
+
+Thu May 1 14:06:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Score File Format): Fix.
+
+Sun Apr 27 11:11:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NNTP): Addition.
+
+Sat Apr 12 16:51:32 1997 Robert Bihlmeyer <robbe@orcus.priv.at>
+
+ * gnus.texi (Thwarting Email Spam): Addition.
+
+Tue Apr 15 16:11:38 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Various Message Variables): Addition.
+
+ * gnus.texi (Thwarting Email Spam): Addition.
+
+Sat Apr 12 00:26:47 1997 Francois Felix Ingrand <felix@laas.fr>
+
+ * gnus.texi (NoCeM): Addition.
+
+Thu Apr 10 21:25:14 1997 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus.texi (Emacs/XEmacs Code): Addition.
+
+Thu Apr 10 20:45:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Information): Fix.
+
+Wed Apr 2 11:48:44 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Sorting): Use total score.
+
+Tue Apr 1 11:44:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Subscription Methods): Addition.
+ (Group Info): Addition.
+ (Gnus Utility Functions): New.
+ (Thwarting Email Spam): Addition.
+
+Mon Mar 31 16:15:54 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Various Message Variables): Addition.
+
+Sun Mar 23 02:16:19 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Thwarting Email Spam): New.
+ (Unavailable Servers): Fix.
+
+Wed Mar 19 15:45:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Various Summary Stuff): Addition.
+ (Mail Backend Variables): Addition.
+
+Tue Mar 18 14:43:32 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Washing): Not addition.
+
+Mon Mar 17 16:15:54 1997 Philippe Schnoebelen <Philippe.Schnoebelen@lsv.ens-cachan.fr>
+
+ * Makefile (install): Install properly.
+
+Fri Mar 14 21:00:33 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Parameters): Addition.
+ (Expiring Mail): Addition.
+
+Wed Mar 12 06:57:14 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Various Various): Addition.
+
+Sat Mar 8 03:41:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Parameters): Added example.
+ (Duplicates): Fix.
+
+Fri Mar 7 10:49:43 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * Makefile: New "install" target.
+
+Thu Mar 6 08:01:37 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mail and Procmail): Fix.
+
+Sun Mar 2 02:08:40 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Startup Files): Addition.
+ (Score File Format): Fix.
+
+Fri Feb 28 23:23:31 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Archived Messages): Clarify.
+ (Fuzzy Matching): New.
+
+Mon Feb 24 23:41:57 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Compatibility): New.
+
+Thu Feb 20 03:29:17 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Foreign Groups): Addition.
+
+Wed Feb 19 02:57:51 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Server Variables): New.
+
+Sun Feb 16 15:43:34 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mail Backend Variables): Fix.
+
+ * message.texi (Various Message Variables): Addition.
+
+Mon Feb 10 07:18:16 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Commands): Addition.
+
+Mon Feb 3 19:59:10 1997 Paul Franklin <paul@cs.washington.edu>
+
+ * gnus-group.el (gnus-group-edit-group): Allow editing of bad
+ groups.
+
+Wed Feb 5 02:00:46 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Mail Variables): Change.
+
+Tue Feb 4 02:33:31 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Mail Aliases): New.
+
+ * gnus.texi (Splitting Mail): Addition.
+
+Mon Feb 3 07:31:47 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mode Lines): Addition.
+
+Mon Jan 27 17:51:29 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Highlighting and Menus): Removed
+ `gnus-display-type'.
+
+Sat Jan 25 08:09:30 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (The Active File): Addition.
+
+Fri Jan 24 05:07:28 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Summary Mail Commands): Addition.
+ (Required Backend Functions): Deletia.
+ (Article Washing): Addition.
+ (Summary Mail Commands): Addition.
+
+Mon Jan 20 22:19:40 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Followups To Yourself): Fix.
+
+Fri Jan 17 00:55:51 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NoCeM): Update.
+
+Wed Jan 15 02:23:03 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Mail Group Commands): Fix.
+
+Tue Jan 7 09:36:36 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Summary Buffer Lines): Correction.
+
+Mon Jan 6 22:49:12 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (NoCeM): Addition.
+
+Fri Jan 3 18:13:02 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * message.texi (Various Commands): Addition.
+
+Thu Jan 2 16:12:27 1997 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Optional Backend Functions): Fix.
+
+Mon Dec 16 13:53:28 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Exiting the Summary Buffer): Update.
+
+Fri Dec 13 01:04:41 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Limiting): Addition.
+
+Sat Dec 7 21:10:23 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Example Methods): Addition.
+
+Fri Dec 6 12:38:14 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Parameters): Update.
+
+1996-11-30 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Terminology): Addition.
+
+Wed Nov 27 03:13:05 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Selecting a Group): Addition.
+
+Tue Nov 26 12:42:47 1996 Martin Buchholz <mrb@eng.sun.com>
+
+ * message.texi: Typo fixes and stuff.
+
+Thu Nov 21 17:45:57 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Canceling and Superseding): Fix.
+
+Wed Nov 20 15:42:36 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (New Groups): Addition.
+ (Summary Sorting): Addition.
+
+Tue Nov 19 20:54:16 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Scanning New Messages): Addition.
+
+Sat Nov 9 06:04:22 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Group Parameters): Addition.
+
+Fri Nov 8 04:01:06 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Article Fontisizing): New.
+ (Fancy Mail Splitting): Addition.
+ (Summary Post Commands): Addition.
+ (Mail Spool): Addition.
+ (Server Commands): Addition.
+ (Fancy Mail Splitting): Addition.
+
+Wed Nov 6 06:39:44 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Misc Article): Addition.
+ (Emacsen): Updated.
+
+Wed Nov 6 03:52:05 1996 C. R. Oldham <cro@nca.asu.edu>
+
+ * Makefile (.texi.dvi): Fix rule.
+
+Tue Nov 5 10:45:39 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Other Decode Variables): Addition.
+ (Mail-like Backends): New.
+
+Tue Nov 5 06:41:46 1996 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus.texi (Score File Format): Added warning.
+
+Mon Oct 28 15:50:08 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Startup Variables): Addition.
+
+Fri Oct 25 09:04:59 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Summary Mail Commands): Addition.
+
+Wed Oct 23 08:28:29 1996 Hrvoje Niksic <hniksic@srce.hr>
+
+ * gnus.texi (Fancy Mail Splitting): Removed trailing garbage.
+
+Tue Oct 22 07:36:02 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Converting Kill Files): New.
+
+Sat Oct 19 07:17:28 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Saving Articles): Addition.
+
+ * message.texi (Various Message Variables): Addition.
+
+Thu Oct 17 06:53:04 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Contributors): Added names.
+
+Fri Oct 11 12:38:59 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * gnus.texi (Adaptive Scoring): Addition.
+
+Tue Oct 8 13:16:41 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * Makefile (all): Make custom.
+
+Wed Oct 2 01:32:49 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Group Timestamps): New.
+
+Tue Oct 1 01:34:45 1996 Lars Magne Ingebrigtsen <larsi@hrym.ifi.uio.no>
+
+ * gnus.texi (Expiring Mail): Addition.
+ (Group Line Specification): Addition.
+
+Sat Sep 28 21:36:40 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * gnus.texi (Foreign Groups): Addition.
+
+Mon Sep 23 22:17:44 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (The Summary Buffer): Addition.
+
+Mon Sep 23 18:25:38 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * gnus.texi (Thread Commands): Correction.
+ (Group Information): Correction.
+
+Sat Sep 21 08:11:43 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (New Groups): Split into three nodes.
+ (Group Parameters): Shortened.
+ (Browse Foreign Server): Corrected.
+
+Thu Sep 19 18:45:15 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Mail and Procmail): Addition.
+
+Wed Sep 18 07:33:11 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Other Marks): Edited.
+ (The Manual): New.
+ (Contributors): Updated.
+ (Asynchronous Fetching): Addition.
+ (New Features): Split.
+ ((ding) Gnus): Renamed.
+ (September Gnus): New.
+ (Red Gnus): New,
+ (Undo): New.
+
+Thu Sep 12 23:55:53 1996 Lars Magne Ingebrigtsen <larsi@hrym.ifi.uio.no>
+
+ * gnus.texi (Archived Messages): Fix.
+
+Sat Sep 7 12:14:23 1996 Lars Magne Ingebrigtsen <larsi@hymir.ifi.uio.no>
+
+ * gnus.texi (Various Various): Addition.
+
+Fri Sep 6 07:57:26 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Startup Files): Addition.
+ (Splitting Mail): Addition.
+ (Sorting Groups): Addition.
+ (Topic Sorting): New.
+ (Really Various Summary Commands): Deletia.
+ (Summary Generation Commands): New.
+ (Setting Process Marks): Addition.
+
+Thu Sep 5 07:34:27 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Terminology): Addition.
+ (Web Searches): Fix.
+ (Windows Configuration): Addition.
+
+Sun Sep 1 11:07:09 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (XEmacs Enhancements): New.
+
+Sat Aug 31 02:55:50 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * gnus.texi (Washing Mail): Addition.
+
+Fri Aug 30 09:10:17 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Washing Mail): New.
+ (Fancy Mail Splitting): Change.
+
+Fri Aug 30 00:21:59 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Foreign Groups): Change.
+
+Thu Aug 29 23:51:45 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Daemons): Addition.
+
+Thu Aug 29 02:09:24 1996 François Pinard <pinard@progiciels-bpi.ca>
+
+ * gnus.texi (Web Searches): Typo.
+
+Wed Aug 28 08:21:36 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Server Commands): Addition.
+ (Really Various Summary Commands): Addition.
+
+Mon Aug 26 18:29:23 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Optional Backend Functions): Deletia.
+ (Asynchronous Fetching): Deletia and addition.
+
+Sun Aug 25 23:39:03 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi: Include the version number.
+
+Sun Aug 25 21:31:33 1996 Lars Magne Ingebrigtsen <larsi@ylfing.ifi.uio.no>
+
+ * gnus.texi (Really Various Summary Commands): Addition.
+
+Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Startup Files): Addition.
+ (Anything Groups): Addition.
+
+Thu Aug 22 17:27:31 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Adaptive Scoring): Addition.
+ (Adaptive Scoring): Addition.
+
+Mon Aug 19 00:30:07 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Fancy Mail Splitting): Addition.
+ (Splitting Mail): Addition.
(Group Parameters): Addition.
- (MIME Commands): New.
+ (Topic Variables): Addition.
+ (Mail Group Commands): Addition.
+ (Group Information): Addition.
+ (Article Washing): Addition.
-1998-08-27 07:29:17 Lars Magne Ingebrigtsen <larsi@gnus.org>
+Sun Aug 18 18:06:49 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
- * gnus.texi (Mail Folders): Addition.
+ * gnus.texi (Web Searches): Change and addition.
+
+Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Startup Files): Addition.
+ (Anything Groups): Addition.
+
+Thu Aug 15 17:59:12 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Followups To Yourself): Addition.
+ (Setting Process Marks): Addition.
+ (Process/Prefix): Addition.
+ (Startup Files): Addition.
+ (Mail-To-News Gateways): New.
+
+Wed Aug 14 15:02:14 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Home Score File): Fix.
+ (Various Various): New.
+
+Tue Aug 13 10:38:47 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Error Messaging): New.
+ (Mail Backend Variables): Fix.
+ (Foreign Groups): Added references.
+ (Sorting Groups): Addition.
+
+Sun Aug 11 02:52:37 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (User-Defined Specs): Correction.
+ (Unavailable Servers): Addition.
+ (Moderation): New.
+ (Summary Mail Commands): Addition.
+ (Crosspost Handling): Addition.
+
+Sat Aug 10 00:13:39 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Summary Buffer Lines): Correction.
+ (Top): Name fix.
+ (Compilation ): Addition.
+ (Group Parameters): Addition.
+ (Troubleshooting): Addition.
+
+Fri Aug 9 07:17:59 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Selecting a Group): Addition.
+ (Score Decays): New.
+ (Score File Format): Addition.
+ (Changing Servers): Addition.
+ (Selecting a Group): Addition.
+ (Really Various Summary Commands): Addition.
+
+Thu Aug 8 05:39:31 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Read Articles): Addition.
+ (Foreign Groups): Addition.
+ (User-Defined Specs): Separated.
+ (Formatting Fonts): Ditto.
+ (Advanced Formatting): New.
+ (Formatting Basics): Addition.
+ (Formatting Variables): Split.
+
+Wed Aug 7 22:00:56 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * gnus.texi (Hooking New Backends Into Gnus): New node.
+
+Wed Aug 7 01:02:08 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Setting Marks): Addition.
+ (Formatting Variables): Addition.
+
+Mon Aug 5 20:20:42 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Formatting Variables): Addition.
+
+Sun Aug 4 07:15:28 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Score File Format): Addition.
+ (Adaptive Scoring): Addition.
+
+Sat Aug 3 17:35:36 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Group Parameters): Addition.
+ (Home Score File): New.
+ (Topic Parameters): New.
+
+Wed Jul 31 15:34:12 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (are): Fix.
+
+Wed Jul 31 15:32:57 1996 David S. Goldberg <dsg@linus.mitre.org>
+
+ * gnus.texi (buffer-name): Addition.
+
+Fri Aug 2 00:32:39 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi (Pick and Read): Addition.
+ (Article Hiding): Addition.
+ (Article Signature): Made into own node.
+
+Thu Aug 1 00:25:41 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * message.texi (Wide Reply): Addition.
+ (Bouncing): Addition.
+
+ * gnus.texi (Crosspost Handling): Made into own node.
+ (Duplicate Suppression): New.
+ (Document Server Internals): New.
+ (Changing Servers): New.
+
+Wed Jul 31 15:37:44 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.texi: Fix
+
+Mon Jul 29 10:12:24 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+ * gnus.texi (Misc Article): Addition.
+ (Advanced Scoring Tips): New.
+ (Advanced Scoring Example): New.
+ (Advanced Scoring Syntax): New.
+ (Advanced Scoring): New.
\input texinfo @c -*-texinfo-*-
@setfilename gnus
-@settitle Pterodactyl Gnus 0.17 Manual
+@settitle Gnus 5.6.43 Manual
@synindex fn cp
@synindex vr cp
@synindex pg cp
@tex
@titlepage
-@title Pterodactyl Gnus 0.17 Manual
+@title Gnus 5.6.43 Manual
@author by Lars Magne Ingebrigtsen
@page
spool or your mbox file. All at the same time, if you want to push your
luck.
-This manual corresponds to Pterodactyl Gnus 0.17.
+This manual corresponds to Gnus 5.6.43.
@end ifinfo
Gnus, but provide a place for you to store information on particular
groups.
-@item charset
-Elements that look like @code{(charset . iso-8859-1)} will make
-@code{iso-8859-1} the default charset; that is, the charset that will be
-used for all articles that do not specify a charset.
-
@item @var{(variable form)}
You can use the group parameters to set variables local to the group you
are entering. If you want to turn threading off in @samp{news.answers},
@end table
-All the commands below obeys the process/prefix convention
-(@pxref{Process/Prefix}).
-
-When given a symbolic prefix (@pxref{Symbolic Prefixes}), all these
-commands will sort in reverse order.
+When given a prefix, all these commands will sort in reverse order.
You can also sort a subset of the groups:
@item G P a
@kindex G P a (Group)
@findex gnus-group-sort-selected-groups-by-alphabet
-Sort the groups alphabetically by group name
-(@code{gnus-group-sort-selected-groups-by-alphabet}).
+Sort the process/prefixed groups in the group buffer alphabetically by
+group name (@code{gnus-group-sort-selected-groups-by-alphabet}).
@item G P u
@kindex G P u (Group)
@findex gnus-group-sort-selected-groups-by-unread
-Sort the groups by the number of unread articles
-(@code{gnus-group-sort-selected-groups-by-unread}).
+Sort the process/prefixed groups in the group buffer by the number of
+unread articles (@code{gnus-group-sort-selected-groups-by-unread}).
@item G P l
@kindex G P l (Group)
@findex gnus-group-sort-selected-groups-by-level
-Sort the groups by group level
+Sort the process/prefixed groups in the group buffer by group level
(@code{gnus-group-sort-selected-groups-by-level}).
@item G P v
@kindex G P v (Group)
@findex gnus-group-sort-selected-groups-by-score
-Sort the groups by group score
+Sort the process/prefixed groups in the group buffer by group score
(@code{gnus-group-sort-selected-groups-by-score}). @xref{Group Score}.
@item G P r
@kindex G P r (Group)
@findex gnus-group-sort-selected-groups-by-rank
-Sort the groups by group rank
+Sort the process/prefixed groups in the group buffer by group rank
(@code{gnus-group-sort-selected-groups-by-rank}). @xref{Group Score}.
@item G P m
@kindex G P m (Group)
@findex gnus-group-sort-selected-groups-by-method
-Sort the groups alphabetically by backend name
-(@code{gnus-group-sort-selected-groups-by-method}).
+Sort the process/prefixed groups in the group buffer alphabetically by
+backend name (@code{gnus-group-sort-selected-groups-by-method}).
@end table
* Saving Articles:: Ways of customizing article saving.
* Decoding Articles:: Gnus can treat series of (uu)encoded articles.
* Article Treatment:: The article buffer can be mangled at will.
-* MIME Commands:: Doing MIMEy things with the articles.
* Article Commands:: Doing various things with the article buffer.
* Summary Sorting:: Sorting the summary buffer in various ways.
* Finding the Parent:: No child support? Get the parent.
@item gnus-parse-headers-hook
@vindex gnus-parse-headers-hook
-Hook run before parsing any headers.
+Hook run before parsing any headers. The default value is
+@code{(gnus-decode-rfc1522)}, which means that QPized headers will be
+slightly decoded in a hackish way. This is likely to change in the
+future when Gnus becomes @sc{MIME}ified.
@item gnus-alter-header-function
@vindex gnus-alter-header-function
@vindex gnus-article-hide-pgp-hook
Hide @sc{pgp} signatures (@code{gnus-article-hide-pgp}). The
@code{gnus-article-hide-pgp-hook} hook will be run after a @sc{pgp}
-signature has been hidden. For example, to automatically verify
-articles that have signatures in them do:
-@lisp
-;;; Hide pgp cruft if any.
-
-(add-hook 'gnus-article-display-hook 'gnus-article-hide-pgp)
-
-;;; After hiding pgp, verify the message;
-;;; only happens if pgp signature is found.
-
-(add-hook 'gnus-article-hide-pgp-hook
- (lambda ()
- (save-excursion
- (set-buffer gnus-original-article-buffer)
- (mc-verify))))
-@end lisp
+signature has been hidden.
@item W W P
@kindex W W P (Summary)
signature after all.
-@node MIME Commands
-@section MIME Commands
-@cindex MIME decoding
-
-@table @kbd
-@item W M w
-@kindex W M w (Summary)
-Decode RFC2047-encoded words in the article headers
-(@code{gnus-article-decode-mime-words}).
-
-@item W M c
-@kindex W M c (Summary)
-Decode encoded article bodies as well as charsets
-(@code{gnus-article-decode-charset}).
-
-This command looks in the @code{Content-Type} header to determine the
-charset. If there is no such header in the article, you can give it a
-prefix, which will prompt for the charset to decode as. In regional
-groups where people post using some common encoding (but do not include
-MIME headers), you can set the @code{charset} group/topic parameter to
-the required charset (@pxref{Group Parameters}).
-
-@end table
-
-
@node Article Commands
@section Article Commands
it to, for instance, highlight lines or modify the look of the buffer in
some other ungodly manner. I don't care.
-@vindex gnus-summary-prepared-hook
-@item gnus-summary-prepared-hook
-A hook called as the very last thing after the summary buffer has been
-generated.
-
@vindex gnus-summary-ignore-duplicates
@item gnus-summary-ignore-duplicates
When Gnus discovers two articles that have the same @code{Message-ID},
(add-hook 'nnfolder-save-buffer-hook 'turn-off-backup)
@end lisp
-@item nnfolder-delete-mail-hook
-@vindex nnfolder-delete-mail-hook
-Hook run in a buffer narrowed to the message that is to be deleted.
-This function can be used to copy the message to somewhere else, or to
-extract some information from it before removing it.
-
@end table
@item summary-highlight
Do highlights in the summary buffer.
@item article-highlight
-Do highlights according to @code{gnus-article-display-hook} in the
-article buffer.
+Do highlights in the article buffer.
@item highlight
Turn on highlighting in all buffers.
@item group-menu
@table @emph
@item MIME
-Gnus does not yet fully handle MIME, and this standard-to-be seems to
-think that MIME is the bees' knees, so we have major breakage here.
+Gnus does no MIME handling, and this standard-to-be seems to think that
+MIME is the bees' knees, so we have major breakage here.
@item X-Newsreader
This is considered to be a ``vanity header'', while I consider it to be
for the @code{X-Newsreader} header.
@end table
-@item USEFOR
-@cindex USEFOR
-USEFOR is an IETF working group writing a successor to RFC 1036, based
-on Son-of-RFC 1036. They have produced a number of drafts proposing
-various changes to the format of news articles. The Gnus towers will
-look into implementing the changes when the draft is accepted as an RFC.
-
@end table
If you ever notice Gnus acting non-compliant with regards to the texts
@itemize @bullet
@item
-Emacs 20.2 and up.
+Emacs 19.32 and up.
+
+@item
+XEmacs 19.14 and up.
@item
-XEmacs 20.4 and up.
+Mule versions based on Emacs 19.32 and up.
@end itemize
\input texinfo @c -*-texinfo-*-
@setfilename message
-@settitle Pterodactyl Message 0.17 Manual
+@settitle Message 5.6.43 Manual
@synindex fn cp
@synindex vr cp
@synindex pg cp
@tex
@titlepage
-@title Pterodactyl Message 0.17 Manual
+@title Message 5.6.43 Manual
@author by Lars Magne Ingebrigtsen
@page
* Key Index:: List of Message mode keys.
@end menu
-This manual corresponds to Pterodactyl Message 0.17. Message is
-distributed with the Gnus distribution bearing the same version number
-as this manual has.
+This manual corresponds to Message 5.6.43. Message is distributed with
+the Gnus distribution bearing the same version number as this manual
+has.
@node Interface