From f487225f56bb13abb2f7f286b97b968c76511733 Mon Sep 17 00:00:00 2001 From: shuhei-k Date: Mon, 7 Sep 1998 06:43:56 +0000 Subject: [PATCH] Importing gnus-5.6.43 --- GNUS-NEWS | 100 ++ Makefile.in | 20 +- lisp/ChangeLog | 3623 +++++++++++++++++++++++++++++++++++++++++++++++---- lisp/gnus-agent.el | 150 +-- lisp/gnus-art.el | 165 ++- lisp/gnus-cache.el | 2 +- lisp/gnus-demon.el | 11 +- lisp/gnus-dup.el | 2 +- lisp/gnus-ems.el | 41 +- lisp/gnus-group.el | 66 +- lisp/gnus-kill.el | 4 +- lisp/gnus-logic.el | 4 +- lisp/gnus-msg.el | 58 +- lisp/gnus-nocem.el | 16 +- lisp/gnus-score.el | 28 +- lisp/gnus-soup.el | 4 +- lisp/gnus-start.el | 4 +- lisp/gnus-sum.el | 68 +- lisp/gnus-util.el | 158 ++- lisp/gnus-xmas.el | 36 +- lisp/gnus.el | 45 +- lisp/lpath.el | 19 +- lisp/message.el | 88 +- lisp/messagexmas.el | 4 +- lisp/nndb.el | 4 +- lisp/nndraft.el | 2 +- lisp/nneething.el | 4 +- lisp/nnfolder.el | 28 +- lisp/nngateway.el | 2 +- lisp/nnheader.el | 59 +- lisp/nnkiboze.el | 6 +- lisp/nnmail.el | 66 +- lisp/nnmh.el | 6 +- lisp/nnml.el | 7 +- lisp/nnsoup.el | 2 +- lisp/nnspool.el | 15 +- lisp/nntp.el | 8 +- lisp/nnweb.el | 6 +- lisp/score-mode.el | 13 +- texi/ChangeLog | 1005 +++++++++++++- texi/gnus.texi | 115 +- texi/message.texi | 10 +- 42 files changed, 5224 insertions(+), 850 deletions(-) diff --git a/GNUS-NEWS b/GNUS-NEWS index 75306e1..0c5b11a 100644 --- a/GNUS-NEWS +++ b/GNUS-NEWS @@ -1,2 +1,102 @@ ** Gnus changes. +*** The Gnus distribution no longer bundles Custom and Widget. +If your Emacs doesn't come with these libraries, fetch them from +. 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. diff --git a/Makefile.in b/Makefile.in index b28cda9..a30ae8d 100644 --- a/Makefile.in +++ b/Makefile.in @@ -5,37 +5,37 @@ srcdir = @srcdir@ @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 @@ -44,7 +44,7 @@ distclean: 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 diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 93fb80e..2cceed7 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,452 +1,3559 @@ -Sun Sep 6 21:19:26 1998 Lars Magne Ingebrigtsen +Sun Sep 6 20:09:36 1998 Lars Magne Ingebrigtsen - * 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 +1998-09-06 19:41:54 Lars Magne Ingebrigtsen - * 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 - * 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 - * 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 - * 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 - * 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 - * 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 - * 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 -1998-09-05 Mike McEwan + * 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 -1998-09-06 01:56:02 Lars Magne Ingebrigtsen + * 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 - * 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 -1998-09-04 Jason R Mastaler + * nnvirtual.el (nnvirtual-request-group): Update the right group. - * drums.el: Corrected typo. +1998-08-27 16:46:38 Lars Magne Ingebrigtsen -1998-09-05 23:24:43 Hallvard B. Furuseth + * 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 +Thu Aug 27 11:03:59 1998 Lars Magne Ingebrigtsen - * 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 - * 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 - * message.el (message-caesar-region): Bugged out. + * Makefile.in (warn): New. -Sat Sep 5 21:55:01 1998 Lars Magne Ingebrigtsen + * 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 + * 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 - * 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 - * 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 +1998-08-27 07:25:47 Lars Balker Rasmussen - * 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 +1998-08-26 13:51:18 Lars Magne Ingebrigtsen - * 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 - * 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 -1998-09-04 00:25:52 Lars Magne Ingebrigtsen + * 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 - * 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 -1998-09-03 16:28:30 Lars Magne Ingebrigtsen + * 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 + + * gnus-group.el (gnus-fetch-group-other-frame): New command. + +1998-08-25 07:24:51 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-ignored-headers): More headers. + +1998-08-23 Mike McEwan + + * 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 + + * gnus-art.el (article-display-x-face): Allow multiple X-Faces + under XEmacs. + +Sat Aug 22 10:28:25 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.39 is released. + +1998-08-22 10:06:03 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-ignored-headers): Added more headers. + +1998-08-21 02:49:56 Lars Magne Ingebrigtsen + + * 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 + + * nnmail.el (nnmail-spool-file): Allow lists of files. + +1998-08-20 Per Starback + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.38 is released. + +1998-08-20 00:02:50 Lars Magne Ingebrigtsen - * 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 - * 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 -Thu Sep 3 15:23:22 1998 Lars Magne Ingebrigtsen + * 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 -1998-09-03 15:08:30 Lars Magne Ingebrigtsen + * 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 +1980-06-08 03:53:56 Mike McEwan - * 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 -1998-09-02 00:36:23 Hallvard B. Furuseth + * gnus-group.el (gnus-group-suspend): Fix. - * mm-util.el (if): fset the right function. +1998-08-18 00:25:11 Lars Magne Ingebrigtsen -1998-09-02 00:31:53 Lars Magne Ingebrigtsen + * 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 +1998-08-17 14:35:33 Lars Magne Ingebrigtsen - * 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 + * 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 +1998-08-16 23:30:14 Lars Magne Ingebrigtsen - * 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 - * 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 +1998-08-16 14:52:43 Lars Magne Ingebrigtsen - * 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 -Mon Aug 31 23:03:13 1998 Lars Magne Ingebrigtsen + * 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 +1998-08-15 Mike McEwan - * 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 - * 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 + * 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 -1998-08-31 14:27:25 Lars Magne Ingebrigtsen + * 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 - * 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 + + * 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 + + * gnus.el: Gnus v5.6.35 is released. + +1998-08-14 00:00:15 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * 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 - * 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 - * 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 - * 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 - * 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 - * 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 - * 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 - * base64.el (base64-decode-region): Commented out messaging. + * gnus-group.el (gnus-group-apropos): Check symbol value. -1998-08-31 Didier Verna + * 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 -1998-08-31 12:53:32 Lars Magne Ingebrigtsen + * 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 -Mon Aug 31 12:43:46 1998 Lars Magne Ingebrigtsen + * 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 +1998-08-09 Dave Love - * 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 +1998-08-11 11:41:43 Lars Magne Ingebrigtsen - * 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 - * 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 + * 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 +1998-08-09 19:58:36 Lars Magne Ingebrigtsen - * 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 - * 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 - * 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 - * 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 -Sun Aug 30 15:28:01 1998 Lars Magne Ingebrigtsen + * 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 -1998-08-30 12:23:03 Lars Magne Ingebrigtsen + * 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 - * 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 - * 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 -Sun Aug 30 12:15:54 1998 Lars Magne Ingebrigtsen + * 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 -1998-08-30 01:26:12 Lars Magne Ingebrigtsen + * 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 - * 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 +1998-08-06 11:13:56 Francois Felix Ingrand - * 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 +Thu Aug 6 07:58:17 1998 Lars Magne Ingebrigtsen - * 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 +1998-08-06 07:10:31 Lars Magne Ingebrigtsen - * 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 + * 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 + * 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 -1998-08-29 22:38:35 Lars Magne Ingebrigtsen + * 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 - * 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 +1998-07-27 Dave Love - * 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 +1998-08-06 04:41:38 Lars Magne Ingebrigtsen - * 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 + + * message.el (sendmail): Required. + +1998-08-06 02:11:37 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-auto-select-same): Dix fix. + +1998-08-04 Mike McEwan + + * 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 + + * gnus.el: Gnus v5.6.28 is released. + +1998-08-03 22:00:25 Lars Magne Ingebrigtsen + + * nndoc.el (nndoc-set-delims): Removed article-end. + (nndoc-dissect-buffer): Use eobp. + +1998-08-03 19:59:36 Trung Tran-Duc + + * nntp.el (nntp-open-connection): Bind coding-system-for-write. + +1998-07-31 16:45:36 Lars Magne Ingebrigtsen + + * gnus-group.el (gnus-group-read-ephemeral-group): Make the server + unique. + +1998-07-28 François Pinard + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.27 is released. + +1998-07-27 02:27:11 Lars Magne Ingebrigtsen + + * 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 + + * gnus-util.el (gnus-netrc-syntax-table): @ is whitespace + +1998-07-17 Gordon Matzigkeit + + * 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 + + * 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 + + * nnmail.el (nnmail-move-inbox): Clear nnmail-internal-password, + when supplied Password is incorrect. + +Sat Jul 25 19:31:36 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.26 is released. + +1998-07-25 14:53:24 Lars Magne Ingebrigtsen + + * gnus-salt.el (gnus-pick-mouse-pick-region): Use + gnus-read-event-char. + +Sat Jul 25 02:43:35 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.25 is released. + +1998-07-25 00:03:24 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el (gnus-news-group-p): Bogosity in params. + +1998-07-21 16:14:32 Robert Bihlmeyer + + * gnus-util.el (gnus-globalify-regexp): New function. + +1998-07-18 21:49:01 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-list-of-unread-articles): Peel off articles + outside active range. + +1998-07-15 10:47:39 Lars Magne Ingebrigtsen + + * 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 + + * gnus-salt.el (gnus-tree-minimize-window): Allow numbers. + +Wed Jul 15 10:25:29 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-expire): Ignored ticks. + +Wed Jul 15 10:15:28 1998 Hallvard B. Furuseth + + * nntp.el (nntp-send-authinfo): Message better and stuff. + +Wed Jul 15 10:10:07 1998 Lars Magne Ingebrigtsen + + * gnus.el (gnus-message-archive-group): Allow sexp. + +Wed Jul 15 09:56:47 1998 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-select-newsgroup): Accept select-articles + para, + +1998-07-13 Mike McEwan + + * 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 + + * nndir.el (nndir): Use nnml to request article. + +1998-07-11 SL Baur + + * gnus-topic.el (gnus-topic-mode-map): Use modern key syntax. + +Sun Jul 12 04:01:22 1998 Lars Magne Ingebrigtsen + + * gnus-score.el (gnus-current-home-score-file): New function. + +1998-07-11 Mike McEwan + + * 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 + + * nnmail.el (nnmail-active-file-coding-system): Changed to + binary. + +Sun Jul 12 03:16:18 1998 Lars Magne Ingebrigtsen + + * gnus-score.el (gnus-score-load-file): Specify which alist to + decay. + +1998-07-12 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.24 is released. + +Fri Jul 10 04:23:24 1998 Hallvard B. Furuseth + + * gnus-util.el (gnus-parse-netrc): Allow "default" values. + +Fri Jul 10 04:15:35 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-server-opened-hook): Doc change. + +Fri Jul 10 03:03:48 1998 François Pinard + + * gnus-sum.el (gnus-summary-respool-trace): New command and + keystroke. + +Fri Jul 10 02:18:01 1998 Lars Magne Ingebrigtsen + + * gnus-util.el (gnus-prin1): Bind print-escape-multibyte to nil. + +Mon Jul 6 01:02:59 1998 Simon Josefsson + + * gnus-range.el (gnus-sorted-complement): Fix comments. + +Thu Jul 2 11:16:14 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-int.el (gnus-get-function): Set funct to nil. + +1998-07-01 16:57:38 Simon Josefsson + + * 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 + + * 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 + + * message.el (message-cite-original): Use mail-citation-hook. + (message-cite-function): Ditto. + +Wed Jul 1 14:00:53 1998 Rajappa Iyer + + * gnus-salt.el (gnus-pick-mode-map): Changed keymap. + +Wed Jul 1 13:33:26 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.23 is released. + +Wed Jul 1 12:52:32 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-util.el (gnus-delete-if): Would do the opposite. + +Wed Jul 1 01:53:31 1998 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-build-sparse-threads): Didn't work at all. + +Tue Jun 30 15:56:54 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-agent.el (gnus-agent-expire): Use a fresh hash table. + +Mon Jun 29 22:49:49 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.22 is released. + +Mon Jun 29 21:22:46 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-spec.el (gnus-face-face-function): Double quoting removed. + +Sun Jun 28 09:54:52 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.21 is released. + +Sun Jun 28 08:51:39 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.20 is released. + +Sat Jun 27 08:49:51 1998 Arne Georg Gleditsch + + * gnus-sum.el (gnus-parent-headers): Check better for headers. + +Sat Jun 27 08:45:09 1998 Lars Magne Ingebrigtsen + + * message.el (message-check-news-body-syntax): Buggy checksum + check. + +Sat Jun 27 07:59:22 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.19 is released. + +Sat Jun 27 07:50:50 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.18 is released. + +Sat Jun 27 03:18:57 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.16 is released. + +Fri Jun 26 15:36:25 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-get-newsgroup-headers): parse Chars: headers + +Fri Jun 26 13:45:24 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-util.el (gnus-remove-duplicates): New function. + +Fri Jun 26 13:30:42 1998 Kevin Christian + + * gnus-score.el (gnus-score-string): Do updating of scores after + fuzzies. + +Fri Jun 26 07:26:03 1998 Lars Magne Ingebrigtsen + + * message.el (message-mode): Don't do the intern dance. + +Fri Jun 26 07:13:49 1998 Richard Stallman + + * message.el (message-mode): Adaptive fill changes. + +Fri Jun 26 04:29:44 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.15 is released. + +Fri Jun 26 03:39:32 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.14 is released. + +Thu Jun 25 05:13:31 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.13 is released. + +Wed Jun 24 07:47:04 1998 Lars Magne Ingebrigtsen + + * gnus-topic.el (gnus-topic-rename): Disallow "nil". + +Wed Jun 24 07:33:17 1998 Vladimir Alexiev + + * nnvirtual.el (nnvirtual-update-xref-header): Regexp-quote group + name. + +Wed Jun 24 06:15:27 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.12 is released. + +Wed Jun 10 11:06:35 1998 Andreas Schwab + + * 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 + + * gnus-uu.el (gnus-uu-default-view-rules): make sed kill ^M only + at the end of line. + +1998-06-05 Hrvoje Niksic + + * nnmail.el (nnmail-get-split-group): Don't regexp-quote + nnmail-procmail-suffix. + +Wed Jun 24 03:04:05 1998 Kim-Minh Kaplan + + * gnus-sum.el (gnus-build-get-header): Fix obarray. + +Wed Jun 24 02:49:57 1998 Castor + + * nntp.el (nntp-open-ssl-stream): + +Wed Jun 24 02:31:46 1998 Lars Magne Ingebrigtsen + + * 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 + + * nngateway.el (nngateway-mail2news-header-transformation): New + function. + +Wed Jun 24 00:25:45 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-topic.el (gnus-topic-prepare-topic): Respect visible topic + param. + (gnus-topic-hierarchical-parameters): New function. + +1998-06-02 Didier Verna + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.11 is released. + +Wed Jun 3 03:33:50 1998 Lars Magne Ingebrigtsen + + * gnus.el: Checked doc string syntax throughout. + + * message.el (message-subject-re-regexp): Renamed. + +Wed Jun 3 03:33:05 1998 Simon Josefsson + + * message.el (message-ignored-subject-re): New variable. + +Wed Jun 3 03:25:13 1998 Sam Steingold + + * gnus-msg.el (gnus-bug-create-help-buffer): New variable. + (gnus-bug): Use it. + +1998-05-07 Hrvoje Niksic + + * 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 + + * 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 + + * nnfolder.el (nnfolder-delete-mail): Changed parameters. + (nnfolder-request-replace-article): Rename X-From-Line. + +Wed Jun 3 03:10:04 1998 Dan Christensen + + * nnfolder.el (nnfolder-adjust-min-active): Work. + +Mon Jun 1 05:27:28 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-dependencies-add-header): Break loops. + +Mon Jun 1 05:13:34 1998 Fabrice POPINEAU + + * gnus-cache.el (gnus-cache-generate-active): Regexp-quote. + +Mon Jun 1 04:31:23 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.10 is released. + +Mon Jun 1 03:25:33 1998 Lars Magne Ingebrigtsen + + * 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 + + * nntp.el (nntp-encode-text): Removed spurious forward-line. + +Sat May 23 19:44:43 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-fetch-session): Would infloop if + opening failed. + +Tue May 19 04:11:33 1998 Yoshiki Hayashi + + * nnheader.el (nnheader-translate-file-chars): Don't change + string. + +Tue May 19 03:07:45 1998 P. E. Jareth Hein + + * gnus-util.el (gnus-dd-mmm): New version. + +Tue May 19 03:00:39 1998 Lars Magne Ingebrigtsen + + * gnus.el: Changed address. + +Tue May 12 06:12:42 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-expire): Delete more. + +Sun May 10 19:08:28 1998 Lars Magne Ingebrigtsen + + * gnus-group.el (gnus-group-read-ephemeral-group): Don't add + `address'. + +Sun May 3 18:01:01 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-agent.el (gnus-agent-save-group-info): Fix + re-search-forward params. + +Sun May 3 15:04:02 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-expire): Check for the size. + +Sat May 2 01:50:20 1998 Dan Christensen + + * 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 + + * 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 + + * gnus.el: Gnus v5.6.9 is released. + +Fri May 1 21:54:30 1998 Lars Magne Ingebrigtsen + + * nnfolder.el (nnfolder-goto-article): Would infloop. + +Fri May 1 19:45:50 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.8 is released. + +Fri May 1 18:51:21 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-score.el (gnus-adaptive-word-no-group-words): New variable. + +Fri May 1 16:56:32 1998 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-generate-headers): Insert Sender when + required. + +Fri May 1 15:28:55 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.7 is released. + +Wed Apr 29 20:54:35 1998 Lars Magne Ingebrigtsen + + * 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 things. + +Wed Apr 29 20:18:45 1998 Kurt Swanson + + * 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 + + * 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 + + * 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 + + * gnus-util.el (gnus-alive-p): Check for binding. + +Tue Apr 28 03:00:16 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.6 is released. + +Mon Apr 27 00:07:11 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * nntp.el (nntp-rlogin-parameters): Doc fix. + +Sun Apr 26 19:21:12 1998 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-summary-save-in-mail): Not a command. + +Sun Apr 26 19:16:03 1998 James Troup + + * gnus-sum.el (gnus-summary-expire-articles-now): Work. + +Sun Apr 26 14:34:06 1998 Lars Magne Ingebrigtsen + + * 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 + + * nnmail.el (nnmail-move-inbox): Push error'ed mailboxes onto the + list. + +Sun Apr 26 13:01:53 1998 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-mode): New adaptive fill defaults. + +Sun Apr 26 12:50:38 1998 Jim Radford + + * gnus-start.el (gnus-active-to-gnus-format): Groups that start + with dots. + +1998-04-11 Richard Stallman + + * gnus/gnus-art.el (gnus-emphasis-alist): Use nth, not caddr. + +Sat Apr 25 15:33:57 1998 Kim-Minh Kaplan + + * gnus-sum.el (gnus-build-sparse-threads): Handle loops. + +Sat Apr 25 15:09:54 1998 Lars Magne Ingebrigtsen + + * gnus.el (gnus-valid-select-methods): nngateway is post-mail. + +Fri Apr 24 21:32:14 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.5 is released. + +Fri Apr 24 21:19:21 1998 Lars Magne Ingebrigtsen + + * gnus-msg.el (gnus-post-method): Doc fix. + (gnus-post-method): Reversed semantics. + +1998-04-01 Jan Vroonhof + + * 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 + + * nnmbox.el (nnmbox-request-create-group): New function. + +Sun Apr 12 07:55:16 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-save-group-info): Only do those that + are covered. + +Tue Apr 7 11:26:31 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-authinfo-file): Doc fix. + +1998-03-31 Ken Raeburn + + * 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 + + * message.el (message-supersede): Check Sender. + (message-cancel-news): Fix Sender check. + +Sun Mar 29 11:54:33 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.4 is released. + +Sun Mar 29 09:47:58 1998 Lars Magne Ingebrigtsen + + * nnkiboze.el (nnkiboze-request-delete-group): Would bug out when + deleting files. + +Sat Mar 28 08:48:31 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-encode-text): Use `nntp-end-of-line'. + +Thu Mar 26 15:29:51 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-score.el (gnus-score-default-type): Doc fix. + +Mon Mar 23 14:12:01 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-article-edit-article-hook): New hook. + +1998-03-19 Jan Vroonhof + + * nntp.el (nntp-open-rlogin): Wrap in save-excursion + +Thu Mar 19 16:43:59 1998 Joe Buehler + + * gnus-util.el (gnus-date-iso8601): Use simple string. + +Thu Mar 19 15:18:00 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.3 is released. + +Thu Mar 19 15:09:14 1998 Wes Hardaker + + * gnus-win.el (gnus-delete-windows-in-gnusey-frames): Make sure + there are no nil buffers. + +1998-03-17 Per Abrahamsen + + * gnus-uu.el (gnus-uu-digest-headers): Add `Content-Type' and + `Content-Transfer-Encoding'. + +1998-03-18 Per Abrahamsen + + * message.el (message-header-lines): Added `:format'. + +1998-03-18 Simon Josefsson + + * nndoc.el: dummy request-accept-article + +Thu Mar 19 14:10:25 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * gnus-art.el (article-hide-headers): Fold case. + +Sat Mar 14 17:57:35 1998 Lars Magne Ingebrigtsen + + * gnus-util.el (gnus-horizontal-recenter): New window-end may + return nil. + +Fri Mar 13 22:12:30 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-agent.el (gnus-agent-high-scored-p): Wrong value. + +Fri Mar 13 21:10:24 1998 Lars Magne Ingebrigtsen + + * nnvirtual.el (nnvirtual-request-group): Force updating of info. + +Sun Mar 8 20:46:51 1998 Lars Magne Ingebrigtsen + + * nnmail.el (nnmail-delete-incoming): Changed default. + +Sun Mar 8 14:05:25 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.2 is released. + +Sun Mar 8 00:35:09 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Gnus v5.6.1 is released. + +Sat Mar 7 22:15:46 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.37 is released. + +Sat Mar 7 20:10:42 1998 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-expire-days): New variable. + (gnus-agent-expire): New function. + +Sat Mar 7 17:35:53 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.36 is released. + +Sat Mar 7 17:29:20 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-wait-for): Reversed logic. + +Sat Mar 7 17:19:04 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.35 is released. + +Sat Mar 7 15:01:57 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-article-prepare): Mark articles as + downloadable. + +Wed Mar 4 22:33:27 1998 Ken Raeburn + + * gnus-int.el (gnus-get-function): New version, caches symbol + names. + +Fri Mar 6 01:10:22 1998 Ken Raeburn + + * 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 + + * 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 + + * 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 + + * nntp.el: Check whether the connection died. + +1998-03-01 Kim-Minh Kaplan + + * gnus.texi (Easy Picons): Removed references to + `gnus-group-display-picons'. + (Hard Picons): Ditto. + +Mon Mar 2 16:17:36 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.34 is released. + +Sat Feb 28 08:17:37 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.33 is released. + +Sat Feb 28 08:10:27 1998 Lars Magne Ingebrigtsen + + * gnus-picon.el (gnus-picons-display-x-face): `buf' -- unbound + var. + +Sat Feb 28 08:03:23 1998 François Pinard + + * gnus: configure'd. + +Sat Feb 28 07:43:00 1998 Nelson Jose dos Santos Ferreira + + * nnsoup.el (nnsoup-store-reply): Fix double sep error. + +Sat Feb 28 07:01:17 1998 Lasse Rasinen + + * gnus-start.el (gnus-ask-server-for-new-groups): Message more. + +Fri Feb 27 13:26:34 1998 Lars Magne Ingebrigtsen + + * message.el (message-resend): Allow arbitrary Also's. + +1998-02-27 Dave Love + + * gnus-sum.el (gnus-simplify-subject-functions): Fix + customization, doc. + +1998-02-25 Dave Love + + * gnus-art.el (gnus-article-x-face-command): Replace leading `{'. + +Mon Feb 23 18:26:48 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.32 is released. + +Mon Feb 23 17:48:42 1998 Lars Magne Ingebrigtsen + + * 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~} + + * nnweb.el (nnweb-type-definition): Fixed. + +Sun Feb 22 18:10:53 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.31 is released. + +Sun Feb 22 02:09:35 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-get-newsgroup-headers): Buggy regexp. + +Sat Feb 21 00:51:22 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.30 is released. + +Sat Feb 21 00:09:14 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-group.el (gnus-useful-groups): Include gnus-bug. + +Thu Feb 19 02:28:17 1998 Jens-Ulrik Holger Petersen + + * gnus.el (gnus-group-history): Defined twice. + +Thu Feb 19 01:58:47 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.29 is released. + +Tue Feb 17 06:15:03 1998 Lars Magne Ingebrigtsen + + * nnmail.el (nnmail-purge-split-history): List of alists, not + alist. + +Mon Feb 16 20:22:04 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.28 is released. + +1998-02-16 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-kill-to-signature): Do the right thing when + there is no signature. + +1998-02-16 Hrvoje Niksic + + * message.el (message-elide-elipsis): Add type and group. + (message-elide-region): Docfix. + +1998-02-16 Lars Magne Ingebrigtsen + + * gnus-util.el (gnus-run-hooks): Use unwind-protect instead of + save-excursion. + +1998-02-16 Per Abrahamsen + + * nntp.el (nntp-authinforc-file): Customized. + +Mon Feb 16 03:18:33 1998 Lars Magne Ingebrigtsen + + * 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 + + * nntp.el (nntp-authinforc-file): Changed name and default. + (nntp-send-authinfo): Use it. + +Sun Feb 15 19:50:10 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.27 is released. + +Sun Feb 15 19:41:14 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-article-read-summary-keys): Go to top on + some. + +Sun Feb 15 19:26:21 1998 SeokChan LEE + + * message.el (message-ignored-supersedes-headers): Fix. + +Sun Feb 15 18:39:15 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-nov-parse-line): Would bug out on bogus + References headers. + +Sun Feb 15 14:23:51 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-xmas.el (gnus-xmas-article-display-xface): t t would make + faces disappear. + +Sat Feb 14 20:52:34 1998 Lars Magne Ingebrigtsen + + * nntp.el (nntp-netrc-file): New variable. + +Sat Feb 14 19:28:01 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.26 is released. + +Sat Feb 14 18:40:55 1998 Lars Magne Ingebrigtsen + + * 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 + + * nnmail.el (nnmail-process-babyl-mail-format): Fix point + movement. + +Sat Feb 14 18:31:39 1998 Lars Magne Ingebrigtsen + + * gnus.el (gnus-group-get-parameter): Dix fix. + +Sat Feb 14 18:29:12 1998 Kim-Minh Kaplan + + * gnus-picon.el: Updated documentation. + +Sat Feb 14 18:26:53 1998 Joev Dubach + + * nntp.el (nntp-send-authinfo-from-file): Doc fix. + +Sun Jan 11 23:44:12 1998 Ken Raeburn + + * nnagent.el (nnagent-request-update-info): New no-op fn. + +Sat Feb 14 17:41:44 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.25 is released. + +Fri Feb 13 19:01:19 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * nntp.el (nntp-telnet-shell-prompt): Renamed. + +Fri Feb 13 18:35:23 1998 Sam Falkner + + * nntp.el (nntp-open-telnet-envuser): New variable. + +Fri Feb 13 18:29:23 1998 Lars Magne Ingebrigtsen + + * message.el (message-send-mail-function): Added smtpmail-send-it. + +1998-02-11 Dave Love + + * 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 + + * 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 + + * message.el (message-send-mail-with-qmail): Fix. + +1998-02-13 Per Abrahamsen + + * gnus-draft.el (gnus-draft-make-menu-bar): Added missing commands. + +1998-01-06 Per Abrahamsen + + * gnus/gnus-cus.el (gnus-score-parameters): Make `files' and + `exclude-files' widgets inline. + +Fri Feb 13 12:46:23 1998 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-article-mark): Dox dox. + +Wed Feb 11 15:05:03 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.24 is released. + +Tue Feb 10 21:59:53 1998 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-font-lock-keywords): Allow : as a citation + ending. + +Tue Feb 10 20:09:02 1998 Lars Magne Ingebrigtsen + + * message.el (message-send): Removed dead code. + +Mon Feb 9 17:02:09 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-article-time-format): Extended variable. + +Mon Feb 9 16:27:59 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-agent.el (gnus-unplugged): Typo fix. + +Sun Feb 8 18:34:31 1998 Kurt Swanson + + * gnus-score.el (gnus-score-thread-simplify): New variable. + +Sun Feb 8 18:31:35 1998 Lars Magne Ingebrigtsen + + * gnus-uu.el (gnus-uu-post-encode-mime): Call mmencode with + correct params. + +Sun Feb 8 18:13:58 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.23 is released. + +Sun Feb 8 17:20:40 1998 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-kill-to-signature): Don't kill the + delimiter. + +Sun Feb 8 16:15:33 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus/message.el (message-cite-original): Don't quote signature. + +Sun Feb 8 15:50:20 1998 Lars Magne Ingebrigtsen + + * gnus-group.el (gnus-group-unsubscribe-group): Protest against + empty group names. + +Mon Feb 2 18:56:22 1998 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-art.el (gnus-request-article-this-buffer): Put it into the + backlog. + +Mon Jan 12 23:30:59 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-start.el (gnus-1): Use gnus-alive-p. + +Tue Jan 6 11:53:09 1998 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-article-prepare): Bind coding systems. + +Tue Jan 6 07:45:39 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.22 is released. + +Tue Jan 6 07:32:02 1998 Lars Magne Ingebrigtsen + + * message.el (message-kill-to-signature): Don't use mark. + +Tue Jan 6 07:30:46 1998 Russ Allbery + + * message.el (message-kill-to-signature): New command and keystroke. + +Tue Jan 6 06:39:29 1998 Lars Magne Ingebrigtsen + + * 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 + + * nnml.el (nnml-generate-nov-databases-1): Fix lower bound on + empty groups. + +Sun Jan 4 14:38:36 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.21 is released. + +Sun Jan 4 14:28:35 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.20 is released. + +1997-12-10 Per Abrahamsen + + * 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 + + * gnus/gnus-art.el (gnus-button-alist): Assume msg-id after "in + message". + +1997-12-22 Simon Josefsson + + * nnmail.el (nnmail-get-new-mail): Make nnmail-tmp-directory + +1997-12-28 Per Abrahamsen + + * gnus/gnus-group.el (gnus-group-fetch-faq): Convert `.' in group + name to `/'. + +Sun Jan 4 13:35:14 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-start.el (gnus-strip-killed-list): Fix syntax. + +Sun Jan 4 13:18:04 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-signature-limit): Add default values for + choices suggested by Per Abrahamsen . + (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 . + +Sun Jan 4 11:31:42 1998 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.19 is released. + +Sun Jan 4 10:42:53 1998 Felix Lee + + * nntp.el (nntp-open-rlogin): Use a list of parameters. + +Sun Jan 4 10:25:05 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-summary-print-article): Use process/prefix. + +Sun Jan 4 05:29:38 1998 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-rename-buffer): Check for nil dirs. + +Fri Dec 19 21:45:59 1997 Lars Magne Ingebrigtsen + + * nnml.el (nnml-request-create-group): Check for files. + +Fri Dec 19 21:39:43 1997 Hrvoje Niksic + + * message.el (message-mode): Fixed font-lock. + +Fri Dec 19 21:26:08 1997 Lars Magne Ingebrigtsen + + * gnus-cache.el (gnus-cache-read-active): Check for empty files. + +Sun Dec 14 11:46:50 1997 Lars Magne Ingebrigtsen + + * gnus-uu.el (gnus-uu-save-article): Quote all lines beginning + with a dash. + +1997-12-10 SL Baur + + * gnus-start.el (gnus-read-descriptions-file): Really bind and gag + Mule. + +Fri Dec 5 15:15:05 1997 Danny Siu + + * 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 + + * 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 + + * gnus-score.el (gnus-adaptive-word-minimum): New variable. + (gnus-score-adaptive): Use it. + +Sun Dec 14 09:19:18 1997 Roland B. Roberts + + * gnus-group.el: Fixed hardcoded levels. + +Sat Dec 6 17:40:33 1997 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.18 is released. + +Sat Dec 6 17:27:04 1997 Kim-Minh Kaplan + + * gnus-picon.el (gnus-picons-remove): Race condition. + +Sat Dec 6 17:23:26 1997 Christian von Roques + + * gnus-start.el (gnus-read-descriptions-file): Fix + enable-multibyte-characters. + +1997-12-05 Dave Love + + * 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 + + * gnus-art.el (gnus-visible-headers): Add X-sent:. + +Sat Dec 6 17:16:28 1997 Lars Balker Rasmussen + + * gnus-art.el (article-make-date-line): Don't add extra newlines. + +1997-11-27 MORIOKA Tomohiko + + * 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 + + * 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 + + * gnus-group.el: Added backspace. + +Thu Nov 27 19:56:59 1997 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-summary-set-agent-mark): Remove marks + properly. + +1997-11-27 Christoph Wedler + + * smiley.el (smiley-buffer): Provide `help-echo'. + +Thu Nov 27 17:33:45 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-start.el (gnus-read-descriptions-file): Add missing quote. + +Wed Nov 26 18:19:29 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus-ems.el (gnus-mule-cite-add-face): Work. + +Wed Nov 26 17:40:57 1997 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.17 is released. + +Wed Nov 26 16:04:25 1997 Lars Magne Ingebrigtsen + + * 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 + + * messagexmas.el (message-xmas-maybe-fontify): New definition. + +Wed Nov 26 15:43:53 1997 Lars Magne Ingebrigtsen + + * gnus-start.el (gnus-setup-news): Protect against nil + gnus-message-archive-method. + +1997-11-26 Christoph Wedler + + * 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 + + * 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 + + * gnus-art.el (gnus-summary-save-in-rmail): Return the name of the + file. + +Wed Nov 26 13:50:01 1997 Alastair Burt + + * smiley.el: Balloon help, etc. + +Wed Nov 26 13:45:35 1997 Lars Magne Ingebrigtsen + + * gnus-util.el (gnus-kill-all-overlays): Remove check for XEmacs. + +1997-09-30 Dave Love + + * message.el: Don't require rmail. + +Wed Nov 26 13:37:50 1997 Kurt Swanson + + * gnus-group.el (gnus-group-setup-buffer): set-buffer. + +Wed Nov 26 13:31:54 1997 Lars Magne Ingebrigtsen + + * 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 + + * nnmail.el (nnmail-move-inbox): Only bind default-directory when + calling external function. + +Wed Nov 26 13:03:45 1997 IWAMURO Motonori + + * gnus-kill.el (gnus-batch-score): Newsrc thinko. + +Wed Nov 26 10:31:17 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-sum.el (gnus-summary-update-info): Would use wrong group + name. + +1997-11-26 Hrvoje Niksic + + * gnus-spec.el (gnus-compile): Avoid multiple `c*addr's. + (gnus-compile): Require `bytecomp'. + +1997-11-25 Hrvoje Niksic + + * 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 + + * 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 + + * gnus-draft.el (gnus-group-send-drafts): Activate group first. + +Tue Nov 25 19:57:55 1997 Dan Christensen + + * gnus-group.el (gnus-group-process-prefix): Skip topics. + +Tue Nov 25 19:54:00 1997 Lars Magne Ingebrigtsen + + * gnus-move.el (gnus-move-group-to-server): Protect agains + nil-ness. + +Tue Nov 25 19:03:38 1997 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.16 is released. + +Tue Nov 25 16:05:01 1997 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-ignored-supersedes-headers): Typo. + +Mon Nov 24 18:46:37 1997 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.15 is released. + +Mon Nov 24 18:07:21 1997 Lars Magne Ingebrigtsen + + * gnus-ems.el: Also check major version names. + +1997-10-05 SL Baur + + * message.el (require 'rmail): Put guard around. + * nnbabyl.el (require 'rmail): Ditto. + +Mon Nov 24 17:36:00 1997 Lars Magne Ingebrigtsen + + * message.el (message-reply): Respect Mail-Copies-To even when + `to-address'. + +Mon Nov 24 17:32:47 1997 Thor Kristoffersen + + * nntp.el (nntp-request-close): Sleep one second. + +Mon Nov 24 16:18:19 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * 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 + + * gnus-spec.el (gnus-compile): Work under XEmacs. + +Mon Nov 24 07:15:45 1997 Lars Magne Ingebrigtsen + + * nnoo.el (nnoo-change-server): Push the right parent packend onto + the alist. + +Sun Nov 23 16:21:41 1997 Lars Magne Ingebrigtsen + + * gnus.el: Quassia Gnus v0.14 is released. + +Sun Nov 23 14:04:07 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus-sum.el (gnus-summary-exit): Don't skip if group + disappeared. + +Sun Nov 23 13:32:55 1997 Lars Magne Ingebrigtsen + + * nnfolder.el (nnfolder-normalize-buffer): New function. + (nnfolder-save-mail): Use it. + (nnfolder-request-replace-article): Ditto. + +1997-11-19 Per Abrahamsen + + * 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 + + * 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 + + * gnus-sum.el (gnus-summary-limit-include-thread): Interactive + fix. + +Sun Nov 23 07:06:58 1997 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-summary-reparent-thread): Insert Message-ID in + proper place. + +Sat Nov 22 18:30:33 1997 Lars Magne Ingebrigtsen + + * gnus-cus.el (gnus-group-parameters): Add visible. + +Sat Nov 22 18:19:39 1997 Kim-Minh Kaplan + + * message.el (message-setup): Add a newline, if necessary. + +Sat Nov 22 18:04:34 1997 Lars Magne Ingebrigtsen + + * gnus-mh.el (gnus-summary-save-in-folder): Fix for default. + +Sat Nov 22 18:01:26 1997 Didier Verna + + * gnus-sum.el (gnus-summary-remove-bookmark): Interactive spec. + +Mon Nov 17 23:50:51 1997 Lars Magne Ingebrigtsen + + * gnus-art.el (article-display-x-face): Fold case. + +Thu Nov 13 22:57:23 1997 Kenichi Handa + + * 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 + + * message.el (message-ignored-supersedes-headers): Ignore more + headers. + +Thu Nov 13 22:28:13 1997 Lars Magne Ingebrigtsen + + * message.el (message-separator-face): Lightened up. + (message-header-other-face): Ditto. + +Thu Nov 13 22:22:11 1997 jari aalto + + * nnmail.el (nnmail-process-mmdf-mail-format): Pop to buffer. + +Thu Nov 13 22:09:39 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.13 is released. + +Thu Nov 6 20:30:14 1997 Lars Magne Ingebrigtsen + + * nnlistserv.el: New backend. + +Thu Nov 6 01:53:51 1997 Stefan Waldherr + + * nnweb.el (nnweb-dejanewsold-search): New function. + +Thu Nov 6 01:52:43 1997 Lars Magne Ingebrigtsen + + * gnus-topic.el (gnus-topic-change-level): Really delete multiple + instances. + +Wed Nov 5 14:04:54 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus-score.el (gnus-score-adaptive): Use the home score file. + +Sat Oct 25 05:52:22 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus-art.el (gnus-article-fill-paragraph): New command and + keystroke. + +1997-10-16 Colin Rafferty + + * message.el (message-make-fqdn): Made certain that user-mail is + not nil. + +Sat Oct 25 00:18:32 1997 David S. Goldberg + + * gnus-art.el (article-hide-boring-headers): Use many-to. + +Fri Oct 24 23:48:39 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-agent.el (gnus-agent-article-file-coding-system): New + variable. + +Sun Oct 12 16:46:11 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.12 is released. + +Sat Oct 4 00:16:39 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * 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 + + * messcompat.el ((boundp 'mail-mode-hook)): Check. + +Sat Sep 27 09:22:15 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus-cache.el (gnus-summary-limit-include-cached): New command + and keystroke. + +Sat Sep 27 06:45:58 1997 Lars Magne Ingebrigtsen + + * gnus-uu.el (gnus-uu-invert-processable): Make interactive. + +Sat Sep 27 06:43:38 1997 Kim-Minh Kaplan + + * gnus-picon.el: Doc fixes. + +1997-09-23 Hrvoje Niksic + + * gnus.el: Removed definition of `custom-face-lookup'. + +Sat Sep 27 05:36:11 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.11 is released. + +Sat Sep 27 03:50:12 1997 Lars Magne Ingebrigtsen + + * 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 + + * nnmail.el (nnmail-activate): Init server buffer. + +Wed Sep 24 04:11:59 1997 Lars Magne Ingebrigtsen + + * 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 + + * nnsoup.el (nnsoup-commit-reply-now): New variable. + (nnsoup-store-reply): Use it. + +Wed Sep 24 02:30:44 1997 Lars Magne Ingebrigtsen + + * gnus-ems.el (gnus-deactivate-mark): New alias. + +Tue Sep 23 07:56:07 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.10 is released. + +Tue Sep 23 01:41:04 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.9 is released. + +Sun Sep 21 23:38:46 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus-score.el (gnus-score-regexp-bad-p): New function. + +Sun Sep 21 00:14:40 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.8 is released. + +Sat Sep 20 20:41:16 1997 Lars Magne Ingebrigtsen + + * 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 + + * message.el (message-set-auto-save-file-name): Make things work + without drafts. + +Sat Sep 20 18:32:02 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.7 is released. + +Thu Sep 18 03:33:54 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.6 is released. + +1997-08-17 SL Baur + + * dgnushack.el (dgnushack-compile): Ignore .el files beginning + with an `=' character. + +Wed Sep 17 02:30:04 1997 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.el: Quassia Gnus v0.5 is released. + +Mon Sep 15 00:53:50 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.4 is released. + +Mon Sep 15 00:19:07 1997 Lars Magne Ingebrigtsen + + * gnus-sum.el (gnus-summary-goto-article): Accept Message-ID's. + +Sun Sep 14 21:41:35 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.el: Quassia Gnus v0.3 is released. + +Sun Sep 14 01:51:45 1997 Lars Magne Ingebrigtsen + + * 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 - * 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 - * 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 - * 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 - * 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 + * 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 + * 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 + * gnus.el: Quassia Gnus v0.1 is released. diff --git a/lisp/gnus-agent.el b/lisp/gnus-agent.el index 3c2df6e..aaa700b 100644 --- a/lisp/gnus-agent.el +++ b/lisp/gnus-agent.el @@ -27,8 +27,7 @@ (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." @@ -78,6 +77,8 @@ If nil, only read articles will be expired." ;;; 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) @@ -93,13 +94,6 @@ If nil, only read articles will be expired." (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) @@ -133,7 +127,7 @@ for download via the Agent.") (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)) @@ -433,7 +427,7 @@ be a select method." (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)))) ;;; @@ -543,7 +537,7 @@ the actual number of articles toggled is returned." (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)) @@ -660,7 +654,7 @@ the actual number of articles toggled is returned." (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) @@ -668,7 +662,7 @@ the actual number of articles toggled is returned." ;; 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) @@ -751,41 +745,41 @@ the actual number of articles toggled is returned." 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) @@ -846,9 +840,9 @@ the actual number of articles toggled is returned." (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)) @@ -903,63 +897,27 @@ the actual number of articles toggled is returned." ;; 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))) @@ -1129,7 +1087,7 @@ The following commands are available: "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) @@ -1303,7 +1261,7 @@ The following commands are available: "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) diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index 07ad076..4eab8db 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -33,7 +33,6 @@ (require 'gnus-spec) (require 'gnus-int) (require 'browse-url) -(require 'mm-bodies) (defgroup gnus-article nil "Article display." @@ -273,6 +272,8 @@ be fed to `format-time-string'." :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 @@ -398,7 +399,7 @@ beginning of a line." :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 @@ -768,7 +769,7 @@ always hide." ((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) @@ -945,72 +946,84 @@ characters to translate 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. @@ -1218,7 +1231,7 @@ Put point at the beginning of the signature separator." (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 @@ -1346,35 +1359,58 @@ how much time has lapsed since DATE." ;; 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)))) @@ -1644,7 +1680,7 @@ Directory to save to is default to `gnus-article-save-directory'." (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) @@ -1661,7 +1697,7 @@ Directory to save to is default to `gnus-article-save-directory'." (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) @@ -1942,7 +1978,6 @@ commands: (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 () @@ -1965,7 +2000,7 @@ commands: ;; 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) @@ -2154,7 +2189,7 @@ Provided for backwards compatibility." (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. @@ -3100,7 +3135,7 @@ specified by `gnus-button-alist'." (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)) diff --git a/lisp/gnus-cache.el b/lisp/gnus-cache.el index bce2f54..7f03b70 100644 --- a/lisp/gnus-cache.el +++ b/lisp/gnus-cache.el @@ -595,7 +595,7 @@ $ emacs -batch -l ~/.emacs -l gnus -f gnus-jog-cache" (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)) diff --git a/lisp/gnus-demon.el b/lisp/gnus-demon.el index d239dda..0015a90 100644 --- a/lisp/gnus-demon.el +++ b/lisp/gnus-demon.el @@ -82,6 +82,10 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's." (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) @@ -151,9 +155,9 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's." 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. @@ -264,7 +268,8 @@ minutes, the connection is closed." (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 () diff --git a/lisp/gnus-dup.el b/lisp/gnus-dup.el index b289639..6958f02 100644 --- a/lisp/gnus-dup.el +++ b/lisp/gnus-dup.el @@ -98,7 +98,7 @@ seen in the same session." "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)) diff --git a/lisp/gnus-ems.el b/lisp/gnus-ems.el index f0e4362..0e95762 100644 --- a/lisp/gnus-ems.el +++ b/lisp/gnus-ems.el @@ -45,6 +45,9 @@ (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) @@ -75,6 +78,12 @@ (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 @@ -86,6 +95,20 @@ ((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)))) @@ -150,11 +173,15 @@ ;; `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 @@ -207,7 +234,7 @@ (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 @@ -218,7 +245,7 @@ (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) @@ -232,6 +259,16 @@ (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: diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 51ca68c..612be02 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -35,7 +35,6 @@ (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/" @@ -2156,7 +2155,7 @@ score file entries for articles to include in the group." (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))))) @@ -2301,52 +2300,46 @@ If REVERSE, sort in reverse order." ;; 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. @@ -2947,9 +2940,8 @@ If N is negative, this group and the N-1 previous groups will be checked." (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) @@ -3381,7 +3373,7 @@ or `gnus-group-catchup-group-hook'." "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)))) diff --git a/lisp/gnus-kill.el b/lisp/gnus-kill.el index 02ee66e..abcc401 100644 --- a/lisp/gnus-kill.el +++ b/lisp/gnus-kill.el @@ -524,7 +524,7 @@ COMMAND must be a lisp expression or a string representing a key sequence." ;; 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)) @@ -535,7 +535,7 @@ COMMAND must be a lisp expression or a string representing a key sequence." (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. diff --git a/lisp/gnus-logic.el b/lisp/gnus-logic.el index 58dfb09..f2913f1 100644 --- a/lisp/gnus-logic.el +++ b/lisp/gnus-logic.el @@ -171,9 +171,9 @@ ((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))))) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 1330288..b0e73aa 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -228,20 +228,11 @@ Thank you for your help in stamping out bugs. ;;; 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. @@ -363,9 +354,6 @@ header line with the old Message-ID." ;; 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) @@ -495,16 +483,14 @@ If SILENT, don't prompt the user." (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 @@ -570,6 +556,36 @@ If SILENT, don't prompt the user." (concat " - \"" xemacs-codename "\"")))) (t emacs-version)))) +;; Written by "Mr. Per Persson" . +(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) + ;;; ;;; Gnus Mail Functions diff --git a/lisp/gnus-nocem.el b/lisp/gnus-nocem.el index 7535a25..d678531 100644 --- a/lisp/gnus-nocem.el +++ b/lisp/gnus-nocem.el @@ -146,7 +146,7 @@ matches an previously scanned and verified nocem message." (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 @@ -190,9 +190,9 @@ matches an previously scanned and verified nocem message." (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) @@ -302,13 +302,13 @@ matches an previously scanned and verified nocem message." "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 () @@ -316,11 +316,11 @@ matches an previously scanned and verified nocem message." (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) diff --git a/lisp/gnus-score.el b/lisp/gnus-score.el index d3813f5..c429950 100644 --- a/lisp/gnus-score.el +++ b/lisp/gnus-score.el @@ -743,7 +743,6 @@ used as score." (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. @@ -795,9 +794,9 @@ If optional argument `SILENT' is nil, show effect of score entry." (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. @@ -1122,7 +1121,7 @@ SCORE is the score to add." (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)) @@ -1203,9 +1202,9 @@ SCORE is the score to add." ;; 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)) @@ -1291,7 +1290,7 @@ SCORE is the score to add." (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))) @@ -1338,8 +1337,7 @@ SCORE is the score to add." (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 @@ -1387,7 +1385,7 @@ SCORE is the score to add." (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) @@ -2211,9 +2209,9 @@ SCORE is the score to add." ;; 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) @@ -2627,7 +2625,7 @@ Destroys the current buffer." (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) @@ -2839,7 +2837,7 @@ If ADAPT, return the home adaptive file instead." (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)) diff --git a/lisp/gnus-soup.el b/lisp/gnus-soup.el index 71345c9..08f8176 100644 --- a/lisp/gnus-soup.el +++ b/lisp/gnus-soup.el @@ -422,7 +422,7 @@ file. The vector contain three strings, [prefix name encoding]." "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)) @@ -443,7 +443,7 @@ file. The vector contain three strings, [prefix name encoding]." (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" diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 005d2d0..97ab9b8 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -2530,8 +2530,8 @@ If FORCE is non-nil, the .newsrc file is read." 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") diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 1e02f04..8509f17 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -504,7 +504,7 @@ with some simple extensions. :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: @@ -663,7 +663,18 @@ is not run if `gnus-visual' is nil." :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) @@ -1384,10 +1395,6 @@ increase the score of each group you read." "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 @@ -1487,10 +1494,6 @@ increase the score of each group you read." ["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] @@ -1883,7 +1886,6 @@ The following commands are available: (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)) @@ -3061,8 +3063,10 @@ Returns HEADER if it was entered in the DEPENDENCIES. Returns nil otherwise." (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 @@ -3485,7 +3489,7 @@ If LINE, insert the rebuilt thread starting on line LINE." (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)))) @@ -4205,7 +4209,7 @@ If WHERE is `summary', the summary mode line format will be used." ;; 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)))) @@ -4405,13 +4409,15 @@ The resulting hash table is returned, or nil if no Xrefs were found." (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 @@ -4531,10 +4537,9 @@ list of headers that match SEQUENCE (see `nntp-retrieve-headers')." 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 -- @@ -5931,13 +5936,13 @@ articles that are younger than AGE days." (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 @@ -6510,7 +6515,7 @@ Obeys the standard process/prefix convention." (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. @@ -7161,7 +7166,10 @@ latter case, they will be copied into the relevant groups." 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" @@ -7312,7 +7320,7 @@ groups." (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 @@ -7330,7 +7338,7 @@ groups." (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) @@ -8150,7 +8158,7 @@ is non-nil or the Subject: of both articles are the same." (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) @@ -8493,7 +8501,7 @@ If N is a negative number, save the N previous articles. 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) diff --git a/lisp/gnus-util.el b/lisp/gnus-util.el index 03b017a..ac066e5 100644 --- a/lisp/gnus-util.el +++ b/lisp/gnus-util.el @@ -33,10 +33,11 @@ (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")) @@ -74,6 +75,9 @@ (set symbol nil)) symbol)) +(defun gnus-truncate-string (str width) + (substring str 0 width)) + ;; Added by Geoffrey T. Dairiki . 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". @@ -102,15 +106,25 @@ (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." @@ -217,6 +231,43 @@ ;;; 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)) @@ -291,7 +342,20 @@ (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. @@ -302,7 +366,7 @@ Cache the result as a text property stored in DATE." '(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))))) @@ -433,8 +497,20 @@ If N, return the Nth ancestor instead." (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." @@ -466,7 +542,7 @@ If N, return the Nth ancestor instead." (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." @@ -639,6 +715,58 @@ with potentially long computations." ;;; 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)) diff --git a/lisp/gnus-xmas.el b/lisp/gnus-xmas.el index dc0f34c..00fc583 100644 --- a/lisp/gnus-xmas.el +++ b/lisp/gnus-xmas.el @@ -41,8 +41,6 @@ automatically." directory) :group 'gnus-xmas) -;;(format "%02x%02x%02x" 114 66 20) "724214" - (defvar gnus-xmas-logo-color-alist '((flame "#cc3300" "#ff2200") (pine "#c0cc93" "#f8ffb8") @@ -54,18 +52,16 @@ automatically." (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 @@ -398,6 +394,24 @@ call it with the value of the `gnus-data' text property." (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]) @@ -442,6 +456,16 @@ call it with the value of the `gnus-data' text property." (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))) diff --git a/lisp/gnus.el b/lisp/gnus.el index e290233..0af6b9c 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -250,10 +250,10 @@ is restarted, and sometimes reloaded." :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 @@ -637,13 +637,13 @@ be set in `.emacs' instead." (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 @@ -1346,16 +1346,12 @@ face." (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)) @@ -1412,7 +1408,6 @@ want." ;;; 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) @@ -1574,19 +1569,20 @@ gnus-newsrc-hashtb should be kept so that both hold the same information.") (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 @@ -1701,7 +1697,7 @@ gnus-newsrc-hashtb should be kept so that both hold the same information.") 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 @@ -2004,13 +2000,14 @@ If ARG, insert string at point." (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)))))) diff --git a/lisp/lpath.el b/lisp/lpath.el index cfee844..d41172b 100644 --- a/lisp/lpath.el +++ b/lisp/lpath.el @@ -25,28 +25,21 @@ 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 @@ -60,9 +53,7 @@ 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) diff --git a/lisp/message.el b/lisp/message.el index 0425d29..a7e5cd4 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -33,13 +33,12 @@ (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)) @@ -849,7 +848,6 @@ The cdr of ech entry is a function for applying the face to a region.") ;;; Internal variables. -(defvar message-default-charset nil) (defvar message-buffer-list nil) (defvar message-this-is-news nil) (defvar message-this-is-mail nil) @@ -950,6 +948,7 @@ The cdr of ech entry is a function for applying the face to a region.") (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") @@ -1012,7 +1011,7 @@ The cdr of ech entry is a function for applying the face to a region.") (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)))) @@ -1024,20 +1023,6 @@ The cdr of ech entry is a function for applying the face to a region.") (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 @@ -1066,7 +1051,7 @@ The cdr of ech entry is a function for applying the face to a region.") (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." @@ -1126,8 +1111,7 @@ Return the number of headers removed." (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)) @@ -1385,7 +1369,6 @@ C-c C-r message-caesar-buffer-body (rot13 the message body)." (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)) @@ -1621,10 +1604,9 @@ text was killed." ;; 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) @@ -2021,10 +2003,8 @@ the user from the mailer." (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) @@ -2193,10 +2173,8 @@ to find out how to use this." (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 @@ -2490,7 +2468,7 @@ to find out how to use this." (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)) @@ -2579,7 +2557,7 @@ to find out how to use this." "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 () @@ -2614,10 +2592,11 @@ to find out how to use this." (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." @@ -2742,7 +2721,9 @@ If NOW, use that time instead." ;; 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." @@ -3074,7 +3055,7 @@ Headers already prepared in the buffer are not modified." (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) @@ -3602,7 +3583,7 @@ header line with the old Message-ID." (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 @@ -4021,35 +4002,6 @@ regexp varstr." (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) diff --git a/lisp/messagexmas.el b/lisp/messagexmas.el index 52619dd..7e3edd3 100644 --- a/lisp/messagexmas.el +++ b/lisp/messagexmas.el @@ -100,8 +100,8 @@ If it is non-nil, it must be a toolbar. The five legal values are "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 diff --git a/lisp/nndb.el b/lisp/nndb.el index 17f5359..0a0f3ef 100644 --- a/lisp/nndb.el +++ b/lisp/nndb.el @@ -70,6 +70,7 @@ (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 @@ -180,7 +181,8 @@ article was posted to nndb") 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))) diff --git a/lisp/nndraft.el b/lisp/nndraft.el index 39c6e28..f7182a5 100644 --- a/lisp/nndraft.el +++ b/lisp/nndraft.el @@ -156,7 +156,7 @@ (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)) diff --git a/lisp/nneething.el b/lisp/nneething.el index 6aaa529..7da5466 100644 --- a/lisp/nneething.el +++ b/lisp/nneething.el @@ -68,6 +68,8 @@ If this variable is nil, no files will be excluded.") +(autoload 'gnus-encode-coding-string "gnus-ems") + ;;; Interface functions. (nnoo-define-basics nneething) @@ -241,7 +243,7 @@ If this variable is nil, no files will be excluded.") (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 '") diff --git a/lisp/nnfolder.el b/lisp/nnfolder.el index b6ba830..db9666b 100644 --- a/lisp/nnfolder.el +++ b/lisp/nnfolder.el @@ -511,20 +511,17 @@ Returns t if successful, nil otherwise." "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. @@ -800,8 +797,7 @@ deleted. Point is left where the deleted region was." (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 diff --git a/lisp/nngateway.el b/lisp/nngateway.el index 41dc00a..2139885 100644 --- a/lisp/nngateway.el +++ b/lisp/nngateway.el @@ -54,7 +54,7 @@ parameter -- the gateway address.") (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) diff --git a/lisp/nnheader.el b/lisp/nnheader.el index 98da659..bc725b6 100644 --- a/lisp/nnheader.el +++ b/lisp/nnheader.el @@ -61,7 +61,8 @@ on your system, you could say something like: (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. @@ -497,6 +498,52 @@ the line could be found." (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) @@ -653,7 +700,7 @@ without formatting." (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) "/"))) @@ -809,14 +856,6 @@ find-file-hooks, etc. (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)) diff --git a/lisp/nnkiboze.el b/lisp/nnkiboze.el index b3e8f7d..c47a10d 100644 --- a/lisp/nnkiboze.el +++ b/lisp/nnkiboze.el @@ -136,7 +136,7 @@ ;; 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)) @@ -230,7 +230,7 @@ Finds out what articles are to be part of the nnkiboze groups." ;; 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)) @@ -318,7 +318,7 @@ Finds out what articles are to be part of the nnkiboze groups." (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"))) diff --git a/lisp/nnmail.el b/lisp/nnmail.el index 2581172..16541b1 100644 --- a/lisp/nnmail.el +++ b/lisp/nnmail.el @@ -28,13 +28,15 @@ (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." @@ -407,7 +409,7 @@ Example: :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 @@ -481,7 +483,7 @@ parameter. It should return nil, `warn' or `delete'." (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) @@ -492,7 +494,7 @@ parameter. It should return nil, `warn' or `delete'." (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)))) @@ -512,12 +514,55 @@ parameter. It should return nil, `warn' or `delete'." (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'." @@ -661,7 +706,7 @@ nn*-request-list should have been called before calling this function." "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) @@ -1158,9 +1203,8 @@ Return the number of characters in the body." (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")))) @@ -1628,9 +1672,9 @@ See the documentation for the variable `nnmail-split-fancy' for documentation." ;; 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) diff --git a/lisp/nnmh.el b/lisp/nnmh.el index a393ebb..8aafd7d 100644 --- a/lisp/nnmh.el +++ b/lisp/nnmh.el @@ -229,8 +229,8 @@ (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))))))) @@ -533,7 +533,7 @@ (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) diff --git a/lisp/nnml.el b/lisp/nnml.el index 42581c0..e7a1df9 100644 --- a/lisp/nnml.el +++ b/lisp/nnml.el @@ -249,8 +249,9 @@ all. This may very well take some time.") (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)) @@ -468,7 +469,7 @@ all. This may very well take some time.") ((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)))) diff --git a/lisp/nnsoup.el b/lisp/nnsoup.el index 4ccb28c..e764150 100644 --- a/lisp/nnsoup.el +++ b/lisp/nnsoup.el @@ -376,7 +376,7 @@ backend for the messages.") (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)) diff --git a/lisp/nnspool.el b/lisp/nnspool.el index dd0b28a..6914f78 100644 --- a/lisp/nnspool.el +++ b/lisp/nnspool.el @@ -28,6 +28,7 @@ (require 'nnheader) (require 'nntp) +(require 'timezone) (require 'nnoo) (eval-when-compile (require 'cl)) @@ -279,7 +280,7 @@ there.") (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]+ ") @@ -452,6 +453,18 @@ there.") "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 diff --git a/lisp/nntp.el b/lisp/nntp.el index 1fb9960..487c72d 100644 --- a/lisp/nntp.el +++ b/lisp/nntp.el @@ -30,6 +30,10 @@ (nnoo-declare nntp) +(eval-and-compile + (unless (fboundp 'open-network-stream) + (require 'tcp))) + (eval-when-compile (require 'cl)) (defvoo nntp-address nil @@ -724,7 +728,7 @@ If this variable is nil, which is the default, no timers are set.") (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) @@ -792,7 +796,7 @@ If SEND-IF-FORCE, only send authinfo to the server if the 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)) diff --git a/lisp/nnweb.el b/lisp/nnweb.el index 96784c2..5a673cd 100644 --- a/lisp/nnweb.el +++ b/lisp/nnweb.el @@ -219,7 +219,7 @@ and `altavista'.") (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) @@ -233,7 +233,7 @@ and `altavista'.") (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))))))) @@ -254,7 +254,7 @@ and `altavista'.") (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 () diff --git a/lisp/score-mode.el b/lisp/score-mode.el index c1c7158..24c31f6 100644 --- a/lisp/score-mode.el +++ b/lisp/score-mode.el @@ -26,6 +26,7 @@ ;;; Code: (require 'easymenu) +(require 'timezone) (eval-when-compile (require 'cl)) (defvar gnus-score-mode-hook nil @@ -50,8 +51,6 @@ 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. @@ -82,7 +81,7 @@ This mode is an extended emacs-lisp mode. (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." @@ -99,8 +98,7 @@ This mode is an extended emacs-lisp mode. (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 @@ -108,6 +106,11 @@ This mode is an extended emacs-lisp mode. (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 diff --git a/texi/ChangeLog b/texi/ChangeLog index 3df96c3..fd2879c 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,19 +1,1004 @@ -1998-09-05 17:36:14 Lars Magne Ingebrigtsen +1998-08-27 07:29:17 Lars Magne Ingebrigtsen + + * gnus.texi (Mail Folders): Addition. - * gnus.texi (Sorting Groups): Change. - (Various Summary Stuff): Addition. +1998-08-25 08:06:28 Lars Magne Ingebrigtsen -1998-09-04 00:40:07 David S. Goldberg + * gnus.texi (Posting Styles): Document this-is. + (Virtual Groups): Addition. - * gnus.texi (Article Hiding): Verify. +1998-08-18 00:30:05 Lars Magne Ingebrigtsen -1998-08-31 11:46:57 Lars Magne Ingebrigtsen + * gnus.texi (Article Hiding): Addition. - * gnus.texi (Mail Folders): Addition. +1998-08-16 14:53:45 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Reinstated. + (Asynchronous Fetching): No header prefetch. + +1998-08-15 13:01:41 Lars Magne Ingebrigtsen + + * gnus.texi (Summary Score Commands): Change. + +1998-08-14 01:31:36 Simon Josefsson + + * gnus.texi (Posting Styles): New 'body style. + +1998-08-13 21:17:00 Lars Magne Ingebrigtsen + + * gnus.texi (Paging the Article): Addition. + +1998-08-13 00:13:47 Simon Josefsson + + * gnus.texi (Mail Group Commands): Typo. + +1998-08-12 21:28:09 Simon Josefsson + + * gnus.texi (Article Caching): gnus-cacheable-groups. + (Newest Features): remove gnus-cacheable-groups. + +1998-08-12 22:01:12 Lars Magne Ingebrigtsen + + * message.texi (Forwarding): Addition. + +1998-08-11 20:33:53 Justin Zaglio + + * gnus.texi (Group Maintenance): Fix. + +1998-08-11 11:44:20 Lars Magne Ingebrigtsen + + * gnus.texi (Group Maintenance): Fix. + +1998-08-10 08:59:25 Lars Magne Ingebrigtsen + + * gnus.texi (Article Highlighting): Addition. + (Article Fontisizing): Fix. + (Article Hiding): Change. + (Article Hiding): Fix. + +1998-08-09 15:32:24 Lars Magne Ingebrigtsen + + * gnus.texi (Hiding Headers): Fix. + (Article Hiding): Addition. + (Document Groups): Addition. + +1998-08-08 06:06:37 Lars Magne Ingebrigtsen + + * gnus.texi (Fancy Mail Splitting): Change. + +1998-08-06 02:12:04 Lars Magne Ingebrigtsen + + * gnus.texi: De-legalize. + + * message.texi: De-legalize. + + * gnus.texi (Summary Maneuvering): Fix. + +1998-07-21 17:51 Simon Josefsson + + * 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 + + * gnus.texi (Topic Commands): Fix. + +1998-07-27 02:23:17 Robert Bihlmeyer + + * gnus.texi (Score Decays): Fix. + +Sun Jul 12 04:03:27 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Home Score File): Addition. + +Fri Jul 10 04:26:23 1998 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Addition. + +Sat Jul 4 14:24:29 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Gnus Utility Functions): Addition. + +Thu Jul 2 11:37:51 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Posting Styles): Ununcommented. + +Wed Jul 1 17:57:54 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Topic Commands): Addition. + +Tue Jun 30 16:11:27 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Topic Commands): Addition. + +Mon Jun 29 21:46:13 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Article Keymap): Typo. + +Sun Jun 28 17:41:10 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Formatting Fonts): Typo fix. + +Sat Jun 27 04:37:14 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Mail-To-News Gateways): Addition. + (Mail-To-News Gateways): Typo. + +Fri Jun 26 13:33:00 1998 Yoshiki Hayashi + + * gnus.texi (Summary Buffer Lines): Typo fix. + +Fri Jun 26 05:53:22 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Summary Score Commands): Deletia. + +Wed Jun 24 00:37:32 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Auto Save): Addition. + (Mail-To-News Gateways): Addition. + (NNTP): Addition. + +Wed Jun 3 03:30:47 1998 Lars Magne Ingebrigtsen + + * message.texi (Message Headers): Addition. + + * gnus.texi (Compatibility): Addition. + +Tue May 19 02:44:31 1998 Mike Pullen + + * gnus.texi.orig: Typo fixes. + +Wed Apr 29 21:52:28 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Key Index): Untabified. + (Group Parameters): Fix. + +Sun Apr 26 15:32:45 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Summary Post Commands): Ref to Message. + + * message.texi (Various Message Variables): Deletia. + +Fri Apr 24 16:00:40 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Example Methods): Addition. + +Thu Mar 26 15:47:54 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Limiting): Mention `/ *'. + +Thu Mar 19 13:02:20 1998 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Addition. + Removed spurious white space. + +Fri Mar 13 21:05:47 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Quassia Gnus): Fix. + (Agent Expiry): Addition. + +Sun Mar 8 13:56:37 1998 James Troup + + * gnus.texi (Group Highlighting): Removed old example. + +Sun Mar 8 00:19:24 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Group Info): Fix ".". + +Sat Mar 7 17:09:49 1998 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Group Parameters): Mention add-to-list. + +Sat Feb 28 14:21:12 1998 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Addition. + +1998-03-01 Kim-Minh Kaplan + + * gnus.texi (Easy Picons): Removed references to + `gnus-group-display-picons'. + (Hard Picons): Ditto. + +1998-03-01 Kim-Minh Kaplan + + * gnus.texi (Easy Picons): Removed references to + `gnus-group-display-picons'. + (Hard Picons): Ditto. + +Mon Feb 23 18:05:09 1998 Lars Magne Ingebrigtsen + + * gnus.texi: Direntry not handled by Emacs 19.34. + +1998-02-21 SL Baur + + * 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 + + * gnus.texi (Score File Format): Addition. + +1998-02-18 Jason R Mastaler + + * gnus.texi: Corrected typo. + +Thu Feb 19 02:20:29 1998 Francois Felix Ingrand + + * gnus.texi (Sorting): Fix order of args. + +Sun Feb 15 23:04:02 1998 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Change. + +Sat Feb 14 17:46:33 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Virtual Groups): Fix. + (NNTP): Addition. + (Really Various Summary Commands): Addition. + +Fri Feb 13 18:23:19 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Mail Group Commands): Typo. + (NNTP): Addition. + (Mail and Procmail): Addition. + +Mon Feb 9 16:30:30 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Article Date): Addition. + +Sun Feb 8 16:28:35 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Newest Features): Addition. + +Mon Feb 2 19:21:43 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Agent Variables): Addition. + +Sun Feb 1 18:08:45 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Using MIME): Addition. + +Tue Jan 6 07:22:41 1998 Lars Magne Ingebrigtsen + + * gnus.texi (Batching Agents): New. + +1998-01-04 Christoph Wedler + + * 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 + + * gnus.texi (Conformity): Removed GNKSA. + +Sun Dec 14 11:06:23 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Adaptive Scoring): Addition. + +1997-11-26 SL Baur + + * message.texi (Insertion): Fix typo. + (Responses): Ditto. + (Reply): Ditto. + +Wed Nov 26 12:57:00 1997 Lars Magne Ingebrigtsen + + * message.texi (Insertion): Addition. + +Wed Nov 26 12:55:15 1997 Hallvard B. Furuseth + + * message.texi (Insertion): Addition. + +Wed Nov 26 12:36:08 1997 Lars Magne Ingebrigtsen + + * message.texi (Responses): New. + (Appendices): New. + + * gnus.texi (Group Info): Fix. + +Tue Nov 25 17:53:55 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Article Date): Addition. + +Mon Nov 24 16:01:20 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Faces & Fonts): New. + +Mon Oct 13 00:08:06 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Agent Commands): Addition. + +Sun Oct 12 16:50:23 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Article Washing): Addition. + (Group Highlighting): New. + (Canceling and Superseding): Addition. + +Wed Oct 1 18:37:55 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Startup Files): Addition. + +Sat Sep 27 09:37:17 1997 Lars Magne Ingebrigtsen + + * message.texi (Sending Variables): Fix. + + * gnus.texi (Choosing Commands): Addition. + +Sat Sep 27 05:56:44 1997 Hallvard B. Furuseth + + * gnus.texi: Various fixes. + +Sat Sep 27 04:24:41 1997 Lars Magne Ingebrigtsen + + * message.texi (Various Commands): Addition. + +Wed Sep 24 02:38:21 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Example Setup): Wrong info. + (SOUP Groups): Addition. + (Contributors): Addition. + +1997-09-22 SL Baur + + * gnus.texi (Finding the Parent): Fix typo. + (NoCeM): Fix typos. + +Tue Sep 23 07:05:48 1997 Lars Magne Ingebrigtsen + + * gnus.texi (NoCeM): Addition. + (Finding the Parent): Addition. + +Mon Sep 22 06:13:00 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Filling In Threads): Addition. + (Finding the Parent): Addition. + +Sun Sep 21 04:35:56 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Startup Variables): Addition. + +1997-09-16 SL Baur + + * gnus.texi: Correct typo. + +Wed Sep 17 02:32:56 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Example Setup): New. + +Mon Sep 15 23:10:05 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Customizing Threading): Addition. + +Sun Sep 14 21:59:07 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Followups To Yourself): \\(_-_\\)? + +Sat Jul 12 16:29:35 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Picon Configuration): Moved Picons to under XEmacs. + (Smileys): New section. + +Fri Jul 11 11:58:20 1997 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Addition. + +Tue Jun 17 23:52:17 1997 Justin Sheehy + + * gnus.texi (Group Parameters): Addition. + +Sun May 25 14:40:17 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Expiring Mail): Addition. + +Sat May 24 05:26:17 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Score File Format): Update. + +Tue May 20 21:56:03 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Document Server Internals): Typo. + +Sun May 18 05:59:24 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Topic Commands): Addition. + +Sun May 11 20:09:24 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Article Hiding): Change. + +Thu May 8 23:48:36 1997 James Troup + + * gnus.texi (Saving Articles): Typo. + +Wed May 7 19:00:48 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Saving Articles): Addition. + +Wed May 7 19:00:43 1997 Mark Boyns + + * gnus.texi (Saving Articles): Addition. + +Thu May 1 14:06:57 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Score File Format): Fix. + +Sun Apr 27 11:11:43 1997 Lars Magne Ingebrigtsen + + * gnus.texi (NNTP): Addition. + +Sat Apr 12 16:51:32 1997 Robert Bihlmeyer + + * gnus.texi (Thwarting Email Spam): Addition. + +Tue Apr 15 16:11:38 1997 Lars Magne Ingebrigtsen + + * message.texi (Various Message Variables): Addition. + + * gnus.texi (Thwarting Email Spam): Addition. + +Sat Apr 12 00:26:47 1997 Francois Felix Ingrand + + * gnus.texi (NoCeM): Addition. + +Thu Apr 10 21:25:14 1997 Hrvoje Niksic + + * gnus.texi (Emacs/XEmacs Code): Addition. + +Thu Apr 10 20:45:47 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Group Information): Fix. + +Wed Apr 2 11:48:44 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Sorting): Use total score. + +Tue Apr 1 11:44:57 1997 Lars Magne Ingebrigtsen + + * 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 + + * message.texi (Various Message Variables): Addition. + +Sun Mar 23 02:16:19 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Thwarting Email Spam): New. + (Unavailable Servers): Fix. + +Wed Mar 19 15:45:17 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Various Summary Stuff): Addition. + (Mail Backend Variables): Addition. + +Tue Mar 18 14:43:32 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Article Washing): Not addition. + +Mon Mar 17 16:15:54 1997 Philippe Schnoebelen + + * Makefile (install): Install properly. + +Fri Mar 14 21:00:33 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Group Parameters): Addition. + (Expiring Mail): Addition. + +Wed Mar 12 06:57:14 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Various Various): Addition. + +Sat Mar 8 03:41:47 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Group Parameters): Added example. + (Duplicates): Fix. + +Fri Mar 7 10:49:43 1997 Lars Magne Ingebrigtsen + + * Makefile: New "install" target. + +Thu Mar 6 08:01:37 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Mail and Procmail): Fix. + +Sun Mar 2 02:08:40 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Startup Files): Addition. + (Score File Format): Fix. + +Fri Feb 28 23:23:31 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Archived Messages): Clarify. + (Fuzzy Matching): New. + +Mon Feb 24 23:41:57 1997 Lars Magne Ingebrigtsen + + * message.texi (Compatibility): New. + +Thu Feb 20 03:29:17 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Foreign Groups): Addition. + +Wed Feb 19 02:57:51 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Server Variables): New. + +Sun Feb 16 15:43:34 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Mail Backend Variables): Fix. + + * message.texi (Various Message Variables): Addition. + +Mon Feb 10 07:18:16 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Article Commands): Addition. + +Mon Feb 3 19:59:10 1997 Paul Franklin + + * gnus-group.el (gnus-group-edit-group): Allow editing of bad + groups. + +Wed Feb 5 02:00:46 1997 Lars Magne Ingebrigtsen + + * message.texi (Mail Variables): Change. + +Tue Feb 4 02:33:31 1997 Lars Magne Ingebrigtsen + + * message.texi (Mail Aliases): New. + + * gnus.texi (Splitting Mail): Addition. + +Mon Feb 3 07:31:47 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Mode Lines): Addition. + +Mon Jan 27 17:51:29 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Highlighting and Menus): Removed + `gnus-display-type'. + +Sat Jan 25 08:09:30 1997 Lars Magne Ingebrigtsen + + * gnus.texi (The Active File): Addition. + +Fri Jan 24 05:07:28 1997 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Followups To Yourself): Fix. + +Fri Jan 17 00:55:51 1997 Lars Magne Ingebrigtsen + + * gnus.texi (NoCeM): Update. + +Wed Jan 15 02:23:03 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Mail Group Commands): Fix. + +Tue Jan 7 09:36:36 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Summary Buffer Lines): Correction. + +Mon Jan 6 22:49:12 1997 Lars Magne Ingebrigtsen + + * gnus.texi (NoCeM): Addition. + +Fri Jan 3 18:13:02 1997 Lars Magne Ingebrigtsen + + * message.texi (Various Commands): Addition. + +Thu Jan 2 16:12:27 1997 Lars Magne Ingebrigtsen + + * gnus.texi (Optional Backend Functions): Fix. + +Mon Dec 16 13:53:28 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Exiting the Summary Buffer): Update. + +Fri Dec 13 01:04:41 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Limiting): Addition. + +Sat Dec 7 21:10:23 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Example Methods): Addition. + +Fri Dec 6 12:38:14 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Group Parameters): Update. + +1996-11-30 Lars Magne Ingebrigtsen + + * gnus.texi (Terminology): Addition. + +Wed Nov 27 03:13:05 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Selecting a Group): Addition. + +Tue Nov 26 12:42:47 1996 Martin Buchholz + + * message.texi: Typo fixes and stuff. + +Thu Nov 21 17:45:57 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Canceling and Superseding): Fix. + +Wed Nov 20 15:42:36 1996 Lars Magne Ingebrigtsen + + * gnus.texi (New Groups): Addition. + (Summary Sorting): Addition. + +Tue Nov 19 20:54:16 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Scanning New Messages): Addition. + +Sat Nov 9 06:04:22 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Group Parameters): Addition. + +Fri Nov 8 04:01:06 1996 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Misc Article): Addition. + (Emacsen): Updated. + +Wed Nov 6 03:52:05 1996 C. R. Oldham + + * Makefile (.texi.dvi): Fix rule. + +Tue Nov 5 10:45:39 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Other Decode Variables): Addition. + (Mail-like Backends): New. + +Tue Nov 5 06:41:46 1996 Hrvoje Niksic + + * gnus.texi (Score File Format): Added warning. + +Mon Oct 28 15:50:08 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Startup Variables): Addition. + +Fri Oct 25 09:04:59 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Summary Mail Commands): Addition. + +Wed Oct 23 08:28:29 1996 Hrvoje Niksic + + * gnus.texi (Fancy Mail Splitting): Removed trailing garbage. + +Tue Oct 22 07:36:02 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Converting Kill Files): New. + +Sat Oct 19 07:17:28 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Saving Articles): Addition. + + * message.texi (Various Message Variables): Addition. + +Thu Oct 17 06:53:04 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Contributors): Added names. + +Fri Oct 11 12:38:59 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Adaptive Scoring): Addition. + +Tue Oct 8 13:16:41 1996 Lars Magne Ingebrigtsen + + * Makefile (all): Make custom. + +Wed Oct 2 01:32:49 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Group Timestamps): New. + +Tue Oct 1 01:34:45 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Expiring Mail): Addition. + (Group Line Specification): Addition. + +Sat Sep 28 21:36:40 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Foreign Groups): Addition. + +Mon Sep 23 22:17:44 1996 Lars Magne Ingebrigtsen + + * gnus.texi (The Summary Buffer): Addition. + +Mon Sep 23 18:25:38 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Thread Commands): Correction. + (Group Information): Correction. + +Sat Sep 21 08:11:43 1996 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Mail and Procmail): Addition. + +Wed Sep 18 07:33:11 1996 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Archived Messages): Fix. + +Sat Sep 7 12:14:23 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Various Various): Addition. + +Fri Sep 6 07:57:26 1996 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Terminology): Addition. + (Web Searches): Fix. + (Windows Configuration): Addition. + +Sun Sep 1 11:07:09 1996 Lars Magne Ingebrigtsen + + * gnus.texi (XEmacs Enhancements): New. + +Sat Aug 31 02:55:50 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Washing Mail): Addition. + +Fri Aug 30 09:10:17 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Washing Mail): New. + (Fancy Mail Splitting): Change. + +Fri Aug 30 00:21:59 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Foreign Groups): Change. + +Thu Aug 29 23:51:45 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Daemons): Addition. + +Thu Aug 29 02:09:24 1996 François Pinard + + * gnus.texi (Web Searches): Typo. + +Wed Aug 28 08:21:36 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Server Commands): Addition. + (Really Various Summary Commands): Addition. + +Mon Aug 26 18:29:23 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Optional Backend Functions): Deletia. + (Asynchronous Fetching): Deletia and addition. + +Sun Aug 25 23:39:03 1996 Lars Magne Ingebrigtsen + + * gnus.texi: Include the version number. + +Sun Aug 25 21:31:33 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Really Various Summary Commands): Addition. + +Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Startup Files): Addition. + (Anything Groups): Addition. + +Thu Aug 22 17:27:31 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Adaptive Scoring): Addition. + (Adaptive Scoring): Addition. + +Mon Aug 19 00:30:07 1996 Lars Magne Ingebrigtsen + + * 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 +Sun Aug 18 18:06:49 1996 Lars Magne Ingebrigtsen - * gnus.texi (Mail Folders): Addition. + * gnus.texi (Web Searches): Change and addition. + +Sat Aug 17 22:24:34 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Startup Files): Addition. + (Anything Groups): Addition. + +Thu Aug 15 17:59:12 1996 Lars Magne Ingebrigtsen + + * 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 + + * gnus.texi (Home Score File): Fix. + (Various Various): New. + +Tue Aug 13 10:38:47 1996 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * 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 + + * 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 + + * 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 + + * gnus.texi (Hooking New Backends Into Gnus): New node. + +Wed Aug 7 01:02:08 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Setting Marks): Addition. + (Formatting Variables): Addition. + +Mon Aug 5 20:20:42 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Formatting Variables): Addition. + +Sun Aug 4 07:15:28 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Score File Format): Addition. + (Adaptive Scoring): Addition. + +Sat Aug 3 17:35:36 1996 Lars Magne Ingebrigtsen + + * gnus.texi (Group Parameters): Addition. + (Home Score File): New. + (Topic Parameters): New. + +Wed Jul 31 15:34:12 1996 Lars Magne Ingebrigtsen + + * gnus.texi (are): Fix. + +Wed Jul 31 15:32:57 1996 David S. Goldberg + + * gnus.texi (buffer-name): Addition. + +Fri Aug 2 00:32:39 1996 Lars Magne Ingebrigtsen + + * 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 + + * 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 + + * gnus.texi: Fix + +Mon Jul 29 10:12:24 1996 Lars Magne Ingebrigtsen + * gnus.texi (Misc Article): Addition. + (Advanced Scoring Tips): New. + (Advanced Scoring Example): New. + (Advanced Scoring Syntax): New. + (Advanced Scoring): New. diff --git a/texi/gnus.texi b/texi/gnus.texi index 29fd4f4..0a6de64 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \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 @@ -318,7 +318,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Pterodactyl Gnus 0.17 Manual +@title Gnus 5.6.43 Manual @author by Lars Magne Ingebrigtsen @page @@ -354,7 +354,7 @@ can be gotten by any nefarious means you can think of---@sc{nntp}, local spool or your mbox file. All at the same time, if you want to push your luck. -This manual corresponds to Pterodactyl Gnus 0.17. +This manual corresponds to Gnus 5.6.43. @end ifinfo @@ -2120,11 +2120,6 @@ are arbitrary comments on the group. They are currently ignored by 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}, @@ -2340,11 +2335,7 @@ Sort the group buffer alphabetically by backend name @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: @@ -2352,38 +2343,38 @@ 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 @@ -3202,7 +3193,6 @@ You can have as many summary buffers open as you wish. * 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. @@ -4924,7 +4914,10 @@ The default is 4. @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 @@ -6296,22 +6289,7 @@ Signature}. @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) @@ -6781,31 +6759,6 @@ the regular expression @samp{^---*Forwarded article}, then it isn't a 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 @@ -7369,11 +7322,6 @@ It is called after the summary buffer has been generated. You might use 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}, @@ -10471,12 +10419,6 @@ your @file{.emacs} file: (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 @@ -14410,8 +14352,7 @@ Do highlights in the group buffer. @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 @@ -15713,8 +15654,8 @@ We do have some breaches to this one. @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 @@ -15724,13 +15665,6 @@ those for posting articles. I would not have known that if it wasn't 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 @@ -15750,10 +15684,13 @@ Gnus should work on : @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 diff --git a/texi/message.texi b/texi/message.texi index ce73a27..ece5eca 100644 --- a/texi/message.texi +++ b/texi/message.texi @@ -1,7 +1,7 @@ \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 @@ -42,7 +42,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Pterodactyl Message 0.17 Manual +@title Message 5.6.43 Manual @author by Lars Magne Ingebrigtsen @page @@ -83,9 +83,9 @@ Message mode buffers. * 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 -- 1.7.10.4