From: Lars Magne Ingebrigtsen Date: Wed, 5 Mar 1997 01:40:41 +0000 (+0000) Subject: *** empty log message *** X-Git-Url: http://cgit.sxemacs.org/?a=commitdiff_plain;h=c29ff77741777cd02b7c0f967e53c1a0ade13ab7;p=gnus *** empty log message *** --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 2fbddaeb5..70048ebfb 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,48 @@ +Mon Jan 6 11:23:05 1997 Lars Magne Ingebrigtsen + + * nnmail.el (nnmail-process-babyl-mail-format): Widen at the right + place. + + * nnfolder.el (nnfolder-possibly-change-group): Set current group + before reading folder. + + * message.el (message-send-mail-with-mh): Expand file name. + (message-mode-menu): Check whether mark-active exists. + + * gnus-group.el (gnus-group-get-new-news): Don't pass ARG to the + listing function. + + * gnus-xmas.el (gnus-xmas-article-show-hidden-text): Deleted. + +Sun Jan 5 21:35:37 1997 Sudish Joseph + + * gnus-xmas.el (gnus-xmas-article-show-hidden-text): Use + 'article-type as the textprop of interest. Speed fix. + + * gnus-art.el (gnus-article-show-hidden-text): Speed fix. + +Sun Jan 5 11:43:08 1997 Lars Magne Ingebrigtsen + + * nnml.el (nnml-retrieve-headers-with-nov): Use faster method for + finding the right range. + + * gnus-demon.el (gnus-demon): Would fire off even if not idle. + + * gnus-srvr.el (gnus-server-add-server): Error when defining an + existing server. + + * gnus-start.el (gnus-get-unread-articles): Update info for native + groups. + + * gnus-load.el (gnus-nocem): New file. + + * gnus-sum.el (gnus-get-newsgroup-headers-xover): Make sure the + group name isn't nil. + +Sun Jan 5 11:18:22 1997 Lars Magne Ingebrigtsen + + * gnus.el: Red Gnus v0.78 is released. + Sun Jan 5 09:39:14 1997 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-summary-exit-no-update): Prompt change. diff --git a/lisp/Makefile b/lisp/Makefile index 461677e85..4c72470b1 100644 --- a/lisp/Makefile +++ b/lisp/Makefile @@ -22,3 +22,15 @@ separately: pot: xpot -drgnus -r`cat ./version` *.el > rgnus.pot + +gnus-load.el: + echo ";;; gnus-load.el --- automatically extracted custom dependencies" > gnus-load.el + echo ";;" >> gnus-load.el + echo ";;; Code:" >> gnus-load.el + echo >> gnus-load.el + $(EMACS) $(FLAGS) -l ./dgnushack.el -l custom-edit.el *.el \ + -f custom-make-dependencies >> gnus-load.el + echo >> gnus-load.el + echo "(provide 'gnus-load)" >> gnus-load.el + echo >> gnus-load.el + echo ";;; gnus-load.el ends here" >> gnus-load.el diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index 18a699b94..ee6e6efeb 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -1045,15 +1045,15 @@ If HIDE, hide the text instead." (save-excursion (let ((buffer-read-only nil) (inhibit-point-motion-hooks t) - (beg (point-min))) - (while (gnus-goto-char (text-property-any - beg (point-max) 'article-type type)) - (setq beg (point)) - (forward-char) + (end (point-min)) + beg) + (while (setq beg (text-property-any end (point-max) 'article-type type)) + (goto-char beg) + (setq end (text-property-not-all beg (point-max) 'article-type type)) (if hide - (gnus-article-hide-text beg (point) gnus-hidden-properties) - (gnus-article-unhide-text beg (point))) - (setq beg (point))) + (gnus-article-hide-text beg end gnus-hidden-properties) + (gnus-article-unhide-text beg end)) + (goto-char end)) t))) (defconst article-time-units diff --git a/lisp/gnus-demon.el b/lisp/gnus-demon.el index d5e0c11e8..943621483 100644 --- a/lisp/gnus-demon.el +++ b/lisp/gnus-demon.el @@ -187,7 +187,7 @@ time Emacs has been idle for IDLE `gnus-demon-timestep's." (or (not (setq idle (nth 2 handler))) ; Don't care about idle. (and (numberp idle) ; Numerical idle... (< idle gnus-demon-idle-time)) ; Idle timed out. - gnus-demon-idle-time) ; Or just need to be idle. + idle) ; Or just need to be idle. ;; So we call the handler. (progn (funcall (car handler)) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 9f9372803..db2207789 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -2836,7 +2836,7 @@ re-scanning. If ARG is non-nil and not a number, this will force (let ((gnus-read-active-file (if arg nil gnus-read-active-file))) (gnus-get-unread-articles arg))) (run-hooks 'gnus-after-getting-new-news-hook) - (gnus-group-list-groups arg)) + (gnus-group-list-groups)) (defun gnus-group-get-new-news-this-group (&optional n) "Check for newly arrived news in the current group (and the N-1 next groups). diff --git a/lisp/gnus-load.el b/lisp/gnus-load.el index e69de29bb..491ef850c 100644 --- a/lisp/gnus-load.el +++ b/lisp/gnus-load.el @@ -0,0 +1,60 @@ +;;; gnus-load.el --- automatically extracted custom dependencies +;; +;;; Code: + +(put 'gnus-visual 'custom-loads '("smiley" "gnus-sum" "gnus-picon" "earcon")) +(put 'gnus-summary-maneuvering 'custom-loads '("gnus-sum")) +(put 'gnus-start 'custom-loads '("gnus" "gnus-util" "gnus-start" "gnus-int")) +(put 'gnus-extract-view 'custom-loads '("gnus-sum")) +(put 'article-hiding-headers 'custom-loads '("gnus-sum")) +(put 'gnus-various 'custom-loads '("gnus-sum")) +(put 'gnus-meta 'custom-loads '("gnus")) +(put 'message-news 'custom-loads '("message")) +(put 'gnus-thread 'custom-loads '("gnus-sum")) +(put 'gnus-treading 'custom-loads '("gnus-sum")) +(put 'message-various 'custom-loads '("message")) +(put 'gnus-summary-exit 'custom-loads '("gnus-sum")) +(put 'gnus 'custom-loads '("nnmail" "gnus" "gnus-win" "gnus-uu" "gnus-sum" "gnus-group" "gnus-eform" "gnus-dup" "gnus-demon" "gnus-cache" "gnus-async" "gnus-art")) +(put 'gnus-summary-visual 'custom-loads '("gnus-sum")) +(put 'gnus-score 'custom-loads '("gnus-sum" "gnus-score" "gnus-nocem" "gnus-kill")) +(put 'gnus-group-select 'custom-loads '("gnus-sum")) +(put 'message-buffers 'custom-loads '("message")) +(put 'gnus-threading 'custom-loads '("gnus-sum")) +(put 'article 'custom-loads '("gnus-sum" "gnus-cite" "gnus-art")) +(put 'gnus-nocem 'custom-loads '("gnus-nocem")) +(put 'gnus-cite 'custom-loads '("gnus-cite")) +(put 'gnus-demon 'custom-loads '("gnus-demon")) +(put 'gnus-mail 'custom-loads '("nnmail")) +(put 'message-interface 'custom-loads '("message")) +(put 'gnus-edit-form 'custom-loads '("gnus-eform")) +(put 'emacs 'custom-loads '("custom" "widget-edit" "message" "gnus" "custom-opt")) +(put 'gnus-summary-mail 'custom-loads '("gnus-sum")) +(put 'gnus-topic 'custom-loads '("gnus-topic")) +(put 'gnus-summary-choose 'custom-loads '("gnus-sum")) +(put 'message-headers 'custom-loads '("message")) +(put 'message-forwarding 'custom-loads '("message")) +(put 'gnus-duplicate 'custom-loads '("gnus-dup")) +(put 'widgets 'custom-loads '("widget-edit")) +(put 'earcon 'custom-loads '("earcon")) +(put 'gnus-summary-format 'custom-loads '("gnus-sum")) +(put 'gnus-windows 'custom-loads '("gnus-win")) +(put 'gnus-summary 'custom-loads '("gnus-sum")) +(put 'gnus-group 'custom-loads '("gnus-topic" "gnus-sum" "gnus-group")) +(put 'gnus-summary-marks 'custom-loads '("gnus-sum")) +(put 'message-mail 'custom-loads '("message")) +(put 'gnus-summary-various 'custom-loads '("gnus-sum")) +(put 'message 'custom-loads '("message")) +(put 'message-sending 'custom-loads '("message")) +(put 'message-insertion 'custom-loads '("message")) +(put 'gnus-summary-sort 'custom-loads '("gnus-sum")) +(put 'customize 'custom-loads '("custom" "custom-edit")) +(put 'gnus-asynchronous 'custom-loads '("gnus-async")) +(put 'article-mime 'custom-loads '("gnus-sum")) +(put 'gnus-extract 'custom-loads '("gnus-uu" "gnus-sum")) +(put 'article-various 'custom-loads '("gnus-sum")) +(put 'mesage-sending 'custom-loads '("message")) +(put 'picons 'custom-loads '("gnus-picon")) + +(provide 'gnus-load) + +;;; gnus-load.el ends here diff --git a/lisp/gnus-srvr.el b/lisp/gnus-srvr.el index 0cbfc2336..93d1aa84d 100644 --- a/lisp/gnus-srvr.el +++ b/lisp/gnus-srvr.el @@ -422,6 +422,8 @@ The following commands are available: (list (intern (completing-read "Server method: " gnus-valid-select-methods nil t)) (read-string "Server name: "))) + (when (assq where gnus-server-alist) + (error "Server with that name already defined")) (push (list where how where) gnus-server-killed-servers) (gnus-server-yank-server)) diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 3819eaf91..8a83e26ee 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -1411,7 +1411,7 @@ newsgroup." ;; Get the number of unread articles in the group. (if active - (inline (gnus-get-unread-articles-in-group info active)) + (inline (gnus-get-unread-articles-in-group info active t)) ;; The group couldn't be reached, so we nix out the number of ;; unread articles and stuff. (gnus-set-active group nil) @@ -1448,8 +1448,8 @@ newsgroup." (setq gnus-killed-hashtb (gnus-make-hashtable (+ (length gnus-killed-list) (length gnus-zombie-list)))) - (while (setq list (pop lists)) - (setq list (symbol-value list)) + (while lists + (setq list (symbol-value (pop lists))) (while list (gnus-sethash (car list) (pop list) gnus-killed-hashtb))))) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index a6a6a5ed3..be4757f9a 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -3715,7 +3715,8 @@ If READ-ALL is non-nil, all articles in the group are selected." (not (eq gnus-fetch-old-headers 'some)) (not (numberp gnus-fetch-old-headers))) (> (length articles) 1)))))) - (gnus-get-newsgroup-headers-xover articles) + (gnus-get-newsgroup-headers-xover + articles nil nil gnus-newsgroup-name) (gnus-get-newsgroup-headers))) (gnus-message 5 "Fetching headers for %s...done" gnus-newsgroup-name) @@ -4353,7 +4354,8 @@ The resulting hash table is returned, or nil if no Xrefs were found." ;; Goes through the xover lines and returns a list of vectors (defun gnus-get-newsgroup-headers-xover (sequence &optional - force-new dependencies) + force-new dependencies + group) "Parse the news overview data in the server buffer, and return a list of headers that match SEQUENCE (see `nntp-retrieve-headers')." ;; Get the Xref when the users reads the articles since most/some @@ -4399,7 +4401,7 @@ list of headers that match SEQUENCE (see `nntp-retrieve-headers')." (nntp-nov-is-evil t)) (nconc (nreverse headers) - (when (gnus-retrieve-headers sequence gnus-newsgroup-name) + (when (gnus-retrieve-headers sequence group) (gnus-get-newsgroup-headers)))))))) (defun gnus-article-get-xrefs () @@ -4490,6 +4492,7 @@ taken into consideration." (nreverse articles))) ((and (boundp 'transient-mark-mode) transient-mark-mode + (boundp 'mark-active) mark-active) ;; Work on the region between point and mark. (let ((max (max (point) (mark))) diff --git a/lisp/gnus-xmas.el b/lisp/gnus-xmas.el index 4bd9a59f4..5e3dc56ce 100644 --- a/lisp/gnus-xmas.el +++ b/lisp/gnus-xmas.el @@ -445,7 +445,6 @@ call it with the value of the `gnus-data' text property." (fset 'gnus-make-local-hook 'make-local-variable) (fset 'gnus-add-hook 'gnus-xmas-add-hook) (fset 'gnus-character-to-event 'character-to-event) - (fset 'gnus-article-show-hidden-text 'gnus-xmas-article-show-hidden-text) (fset 'gnus-mode-line-buffer-identification 'gnus-xmas-mode-line-buffer-identification) (fset 'gnus-key-press-event-p 'key-press-event-p) @@ -708,27 +707,6 @@ XEmacs compatibility workaround." (set-extent-begin-glyph (make-extent (point) (1+ (point))) xface-glyph)))) -(defun gnus-xmas-article-show-hidden-text (type &optional hide) - "Show all hidden text of type TYPE. -If HIDE, hide the text instead." - (save-excursion - (set-buffer gnus-article-buffer) - (let ((buffer-read-only nil) - (inhibit-point-motion-hooks t) - (beg (point-min))) - (while (gnus-goto-char (text-property-any - beg (point-max) 'gnus-type type)) - (setq beg (point)) - (forward-char) - (if hide - (gnus-article-hide-text beg (point) gnus-hidden-properties) - (gnus-article-unhide-text beg (point))) - (setq beg (point))) - (save-window-excursion - (select-window (get-buffer-window (current-buffer))) - (recenter)) - t))) - (defvar gnus-xmas-pointer-glyph (progn (setq gnus-xmas-glyph-directory (message-xmas-find-glyph-directory "gnus")) diff --git a/lisp/gnus.el b/lisp/gnus.el index ccfa5adb9..48fd0cf1d 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -29,6 +29,7 @@ (eval '(run-hooks 'gnus-load-hook)) (require 'custom) +(require 'gnus-load) (defgroup gnus nil "The coffee-brewing, all singing, all dancing, kitchen sink newsreader." @@ -42,7 +43,7 @@ "Score and kill file handling." :group 'gnus ) -(defconst gnus-version-number "0.78" +(defconst gnus-version-number "0.79" "Version number for this version of Gnus.") (defconst gnus-version (format "Red Gnus v%s" gnus-version-number) diff --git a/lisp/message.el b/lisp/message.el index 467d098f1..ac35ef84f 100644 --- a/lisp/message.el +++ b/lisp/message.el @@ -982,8 +982,8 @@ Return the number of headers removed." ["Fill Yanked Message" message-fill-yanked-message t] ["Insert Signature" message-insert-signature t] ["Caesar (rot13) Message" message-caesar-buffer-body t] - ["Caesar (rot13) Region" message-caesar-region mark-active] - ["Elide Region" message-elide-region mark-active] + ["Caesar (rot13) Region" message-caesar-region (mark t)] + ["Elide Region" message-elide-region (mark t)] ["Rename buffer" message-rename-buffer t] ["Spellcheck" ispell-message t] "----" @@ -1730,7 +1730,8 @@ to find out how to use this." "Send the prepared message buffer with mh." (let ((mh-previous-window-config nil) (name (make-temp-name - (concat (file-name-as-directory message-autosave-directory) + (concat (file-name-as-directory + (expand-file-name message-autosave-directory)) "msg.")))) (setq buffer-file-name name) ;; MH wants to generate these headers itself. diff --git a/lisp/nnfolder.el b/lisp/nnfolder.el index ccc2f92a2..81c2b90f4 100644 --- a/lisp/nnfolder.el +++ b/lisp/nnfolder.el @@ -517,6 +517,7 @@ time saver for large mailboxes.") (unless (file-exists-p file) (gnus-make-directory (file-name-directory file)) (nnmail-write-region 1 1 file t 'nomesg)) + (setq nnfolder-current-group group) (setq nnfolder-current-buffer (nnfolder-read-folder file scanning)) (when nnfolder-current-buffer diff --git a/lisp/nnmail.el b/lisp/nnmail.el index f80e3426f..1d018f438 100644 --- a/lisp/nnmail.el +++ b/lisp/nnmail.el @@ -247,7 +247,7 @@ that) from the headers before splitting and saving the messages." :type 'hook) (defcustom nnmail-list-identifiers nil - "Regexp that match list identifiers to be removed. + "Regexp that matches list identifiers to be removed. This can also be a list of regexps." :group 'gnus-mail :type '(choice regexp @@ -656,7 +656,7 @@ is a spool. If not using procmail, return GROUP." (search-forward " ")) (point))) (run-hooks 'nnmail-prepare-incoming-header-hook) - (widen) + (goto-char (point-max)) ;; Find the Message-ID header. (save-excursion (if (re-search-backward "^Message-ID:[ \t]*\\(<[^>]*>\\)" nil t) @@ -684,6 +684,7 @@ is a spool. If not using procmail, return GROUP." ;; a (possibly) faulty header. (progn (insert "X-") t)))) (setq do-search t) + (widen) (if (or (= (+ (point) content-length) (point-max)) (save-excursion (goto-char (+ (point) content-length)) @@ -692,6 +693,7 @@ is a spool. If not using procmail, return GROUP." (goto-char (+ (point) content-length)) (setq do-search nil)) (setq do-search t))) + (widen) ;; Go to the beginning of the next article - or to the end ;; of the buffer. (when do-search @@ -1056,7 +1058,7 @@ Return the number of characters in the body." (when regexp (goto-char (point-min)) (when (re-search-forward - (concat "Subject: +\\(Re: +\\)?\\(" regexp "\\) *") + (concat "^Subject: +\\(Re: +\\)?\\(" regexp "\\) *") nil t) (delete-region (match-beginning 2) (match-end 0)))))) diff --git a/lisp/nnml.el b/lisp/nnml.el index 630777758..b5822d392 100644 --- a/lisp/nnml.el +++ b/lisp/nnml.el @@ -526,10 +526,7 @@ all. This may very well take some time.") (defun nnml-retrieve-headers-with-nov (articles &optional fetch-old) (if (or gnus-nov-is-evil nnml-nov-is-evil) nil - (let ((first (car articles)) - (last (progn (while (cdr articles) (setq articles (cdr articles))) - (car articles))) - (nov (concat nnml-current-directory nnml-nov-file-name))) + (let ((nov (concat nnml-current-directory nnml-nov-file-name))) (when (file-exists-p nov) (save-excursion (set-buffer nntp-server-buffer) @@ -538,19 +535,10 @@ all. This may very well take some time.") (if (and fetch-old (not (numberp fetch-old))) t ; Don't remove anything. - (when fetch-old - (setq first (max 1 (- first fetch-old)))) - (goto-char (point-min)) - (while (and (not (eobp)) (> first (read (current-buffer)))) - (forward-line 1)) - (beginning-of-line) - (when (not (eobp)) - (delete-region 1 (point))) - (while (and (not (eobp)) (>= last (read (current-buffer)))) - (forward-line 1)) - (beginning-of-line) - (when (not (eobp)) - (delete-region (point) (point-max))) + (nnheader-nov-delete-outside-range + (if fetch-old (max 1 (- (car articles) fetch-old)) + (car articles)) + (car (last articles))) t)))))) (defun nnml-possibly-change-directory (group &optional server) diff --git a/texi/ChangeLog b/texi/ChangeLog index f46fcc438..e1ba36ccc 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,7 @@ +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. diff --git a/texi/gnus.texi b/texi/gnus.texi index c19895670..95048ac0e 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Red Gnus 0.78 Manual +@settitle Red Gnus 0.79 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -287,7 +287,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Red Gnus 0.78 Manual +@title Red Gnus 0.79 Manual @author by Lars Magne Ingebrigtsen @page @@ -323,7 +323,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 Red Gnus 0.78 +This manual corresponds to Red Gnus 0.79 @end ifinfo @@ -12942,6 +12942,14 @@ postings to non-binary groups and removes spews (regurgitated articles). You do not have to heed NoCeM messages from all these people---just the ones you want to listen to. +@item gnus-nocem-verifyer +@vindex gnus-nocem-verifyer +@findex mc-verify +This should be a function for verifying that the NoCeM issuer is who she +says she is. The default is @code{mc-verify}, which is a Mailcrypt +function. If this is too slow and you don't care for verification +(which may be dangerous), you can set this variable to @code{nil}. + @item gnus-nocem-directory @vindex gnus-nocem-directory This is where Gnus will store its NoCeM cache files. The default is