+Sun May 26 02:35:48 1996 Lars Magne Ingebrigtsen <larsi@ifi.uio.no>
+
+ * nnheader-ems.el: Bind nnheader-insert-raw-file-contents.
+
+Sun May 26 02:34:01 1996 Bart Robinson <lomew@cs.utah.edu>
+
+ * gnus.el (gnus-save-newsrc-file): Make the backups go to the
+ right directory.
+
+Sun May 26 00:04:38 1996 Lars Magne Ingebrigtsen <larsi@eistla.ifi.uio.no>
+
+ * gnus.el (gnus-cut-thread): Wouldn't cut properly with
+ old-fetched and dormant articles.
+
+Sat May 25 22:49:51 1996 Lars Magne Ingebrigtsen <larsi@eistla.ifi.uio.no>
+
+ * gnus.el (gnus-summary-search-article): Continue from where we
+ were.
+ (gnus-summary-insert-subject): Wouldn't insert when old-fetched
+ articles.
+ (gnus-cut-threads): Would display too many threads when both
+ sparse & ancient articles were present.
+ (gnus-invisible-cut-children): New function.
+
Fri May 24 21:27:49 1996 Lars Magne Ingebrigtsen <larsi@eistla.ifi.uio.no>
+ * gnus.el: 0.94 is released.
+
* nnvirtual.el (nnvirtual-request-group): Don't include itself in
its component groups.
Thu May 23 23:32:43 1996 Lars Magne Ingebrigtsen <larsi@hler.ifi.uio.no>
+Fri May 24 17:56:19 1996 Andy Norman <ange@hplb.hpl.hp.com>
+
+ * nnheader-ems.el (nnheader-xmas-find-file-noselect): Use
+ `nnheader-insert-file-contents-literally'.
+
+Fri May 24 17:51:46 1996 Lars Magne Ingebrigtsen <lars@eyesore.no>
+
+ * gnus.el (gnus-summary-find-prev): With point at eob, would
+ select the next-to-last article.
+
+Fri May 24 17:25:48 1996 Magnus Hammerin <qmah@bull.se>
+
+ * gnus.el (gnus-group-mode): Use `gnus-make-local-hook'.
+ (gnus-sortable-date): Typo.
+
+Fri May 24 17:24:15 1996 ISO-2022-JP <morioka@jaist.ac.jp>
+
+ * gnus.el (gnus-narrow-to-signature): Didn't work.
+
+ * gnus.el: September Gnus v0.93 is released.
+
* gnus.el: September Gnus v0.93 is released.
* nnbabyl.el (nnbabyl-read-mbox): Would bogously increase the
(require 'timezone)
(require 'nnheader)
(require 'message)
+(require 'nnmail)
(eval-when-compile (require 'cl))
"gnus-bug@ifi.uio.no (The Gnus Bugfixing Girls + Boys)"
"The mail address of the Gnus maintainers.")
-(defconst gnus-version "September Gnus v0.94"
+(defconst gnus-version "September Gnus v0.95"
"Version number for this version of Gnus.")
(defvar gnus-info-nodes
(buffer-disable-undo (current-buffer))
(setq truncate-lines t)
(setq buffer-read-only t)
- (make-local-hook 'post-command-hook)
+ (gnus-make-local-hook 'post-command-hook)
(add-hook 'post-command-hook 'gnus-clear-inboxes-moved)
(run-hooks 'gnus-group-mode-hook))
(put 'gnus-save-hidden-threads 'lisp-indent-function 0)
(put 'gnus-save-hidden-threads 'lisp-indent-hook 0)
+(put 'gnus-save-hidden-threads 'edebug-form-spec '(body))
(defmacro gnus-save-hidden-threads (&rest forms)
"Save hidden threads, eval FORMS, and restore the hidden threads."
(defun gnus-summary-insert-subject (id &optional old-header)
"Find article ID and insert the summary line for that article."
- (let ((header (gnus-read-header id))
+ (let ((header (or old-header (gnus-read-header id)))
(number (and (numberp id) id))
pos)
(when header
(when old-header
(mail-header-set-number header (mail-header-number old-header)))
(setq gnus-newsgroup-sparse
- (delq (mail-header-number header) gnus-newsgroup-sparse))
+ (delq (setq number (mail-header-number header))
+ gnus-newsgroup-sparse))
+ (setq gnus-newsgroup-ancient (delq number gnus-newsgroup-ancient))
(gnus-rebuild-thread (mail-header-id header))
- (gnus-summary-goto-subject (setq number (mail-header-number header))
- nil t))
+ (gnus-summary-goto-subject number nil t))
(when (and (numberp number)
(> number 0))
;; We have to update the boundaries even if we can't fetch the
(gnus-data-number result)))))
(defun gnus-summary-find-prev (&optional unread article)
- (let* ((article (or article (gnus-summary-article-number)))
+ (let* ((eobp (eobp))
+ (article (or article (gnus-summary-article-number)))
(arts (gnus-data-find-list article (gnus-data-list 'rev)))
result)
- (when (or (not gnus-summary-check-current)
- (not unread)
- (not (gnus-data-unread-p (car arts))))
+ (when (and (not eobp)
+ (or (not gnus-summary-check-current)
+ (not unread)
+ (not (gnus-data-unread-p (car arts)))))
(setq arts (cdr arts)))
(if (setq result
(if unread
;; We read in the article if we have to.
(and (not data)
force
- (gnus-summary-insert-subject article)
+ (gnus-summary-insert-subject article (and (vectorp force) force))
(setq data (gnus-data-find article)))
(goto-char b)
(if (not data)
;; buffer as a result of the new limit.
(- total (length gnus-newsgroup-data))))
+(defsubst gnus-invisible-cut-children (threads)
+ (let ((num 0))
+ (while threads
+ (when (memq (mail-header-number (caar threads)) gnus-newsgroup-limit)
+ (incf num))
+ (pop threads))
+ (< num 2)))
+
(defsubst gnus-cut-thread (thread)
"Go forwards in the thread until we find an article that we want to display."
- (when (eq gnus-fetch-old-headers 'some)
- ;; Deal with old-fetched headers.
- (while (and thread
- (memq (mail-header-number (car thread))
- gnus-newsgroup-ancient)
- (<= (length (cdr thread)) 1))
- (setq thread (cadr thread))))
- ;; Deal with sparse threads.
- (when (or (eq gnus-build-sparse-threads 'some)
+ (when (or (eq gnus-fetch-old-headers 'some)
+ (eq gnus-build-sparse-threads 'some)
(eq gnus-build-sparse-threads 'more))
- (while (and thread
- (memq (mail-header-number (car thread)) gnus-newsgroup-sparse)
- (= (length (cdr thread)) 1))
+ ;; Deal with old-fetched headers and sparse threads.
+ (while (and
+ thread
+ (or
+ (memq (mail-header-number (car thread)) gnus-newsgroup-sparse)
+ (memq (mail-header-number (car thread)) gnus-newsgroup-ancient))
+ (or (<= (length (cdr thread)) 1)
+ (gnus-invisible-cut-children (cdr thread))))
(setq thread (cadr thread))))
thread)
;; children, then this article isn't visible.
(and (memq number gnus-newsgroup-dormant)
(= children 0))
- ;; If this is a "fetch-old-headered" and there is only one
+ ;; If this is "fetch-old-headered" and there is only one
;; visible child (or less), then we don't want this article.
(and (eq gnus-fetch-old-headers 'some)
(memq number gnus-newsgroup-ancient)
(setq message-id (concat "<" message-id)))
(unless (string-match ">$" message-id)
(setq message-id (concat message-id ">")))
- (let ((header (car (gnus-gethash message-id
- gnus-newsgroup-dependencies))))
+ (let ((header (gnus-id-to-header message-id)))
(if header
;; The article is present in the buffer, to we just go to it.
- (gnus-summary-goto-article (mail-header-number header) nil t)
+ (gnus-summary-goto-article (mail-header-number header) nil header)
;; We fetch the article
(let ((gnus-override-method
(and (gnus-news-group-p gnus-newsgroup-name)
(if (string-equal regexp "")
(setq regexp (or gnus-last-search-regexp ""))
(setq gnus-last-search-regexp regexp))
- (if (gnus-summary-search-article regexp backward)
- (gnus-article-set-window-start
- (cdr (assq (gnus-summary-article-number) gnus-newsgroup-bookmarks)))
+ (unless (gnus-summary-search-article regexp backward)
(error "Search failed: \"%s\"" regexp)))
(defun gnus-summary-search-article-backward (regexp)
(beginning-of-line)
(set-window-start
(get-buffer-window (current-buffer))
- (point)))
+ (point))
+ (forward-line 1)
+ (set-buffer sum))
;; We didn't find it, so we go to the next article.
(set-buffer sum)
(if (not (if backward (gnus-summary-find-prev)
(set-buffer gnus-article-buffer)
(widen)
(goto-char (if backward (point-max) (point-min))))))
- (set-buffer sum)
(gnus-message 7 ""))
;; Return whether we found the regexp.
(when (eq found 'found)
Timezone package is used."
(setq date (timezone-fix-time date nil nil))
(timezone-make-sortable-date
- (aref date 0) (aref date 2) (aref date 2)
+ (aref date 0) (aref date 1) (aref date 2)
(timezone-make-time-string
(aref date 3) (aref date 4) (aref date 5))))
(setq version-control 'never)
(setq buffer-file-name
(concat gnus-current-startup-file ".eld"))
+ (setq default-directory (file-name-directory buffer-file-name))
(gnus-add-current-to-buffer-list)
(buffer-disable-undo (current-buffer))
(erase-buffer)
(standard-output (current-buffer))
info ranges range method)
(setq buffer-file-name gnus-current-startup-file)
+ (setq default-directory (file-name-directory buffer-file-name))
(buffer-disable-undo (current-buffer))
(erase-buffer)
;; Write options.