*** pub/qgnus/lisp/gnus-art.el Wed Jun 24 03:32:25 1998 --- qgnus/lisp/gnus-art.el Fri Jun 26 04:26:35 1998 *************** *** 2024,2034 **** (unless (eq major-mode 'gnus-summary-mode) (set-buffer gnus-summary-buffer)) (setq gnus-summary-buffer (current-buffer)) - ;; Make sure the connection to the server is alive. - (unless (gnus-server-opened - (gnus-find-method-for-group gnus-newsgroup-name)) - (gnus-check-server (gnus-find-method-for-group gnus-newsgroup-name)) - (gnus-request-group gnus-newsgroup-name t)) (let* ((gnus-article (if header (mail-header-number header) article)) (summary-buffer (current-buffer)) (internal-hook gnus-article-internal-prepare-hook) --- 2024,2029 ---- *************** *** 2294,2300 **** (error "There is no summary buffer for this article buffer") (gnus-article-set-globals) (gnus-configure-windows 'article) ! (gnus-summary-goto-subject gnus-current-article))) (defun gnus-article-describe-briefly () "Describe article mode commands briefly." --- 2289,2296 ---- (error "There is no summary buffer for this article buffer") (gnus-article-set-globals) (gnus-configure-windows 'article) ! (gnus-summary-goto-subject gnus-current-article) ! (gnus-summary-position-point))) (defun gnus-article-describe-briefly () "Describe article mode commands briefly." *************** *** 2406,2411 **** --- 2402,2414 ---- (when (gnus-visual-p 'article-highlight 'highlight) (gnus-article-highlight-some))) + (defun gnus-check-group-server () + ;; Make sure the connection to the server is alive. + (unless (gnus-server-opened + (gnus-find-method-for-group gnus-newsgroup-name)) + (gnus-check-server (gnus-find-method-for-group gnus-newsgroup-name)) + (gnus-request-group gnus-newsgroup-name t))) + (defun gnus-request-article-this-buffer (article group) "Get an article and insert it into this buffer." (let (do-update-line) *************** *** 2415,2423 **** (gnus-kill-all-overlays) (setq group (or group gnus-newsgroup-name)) - ;; Open server if it has closed. - (gnus-check-server (gnus-find-method-for-group group)) - ;; Using `gnus-request-article' directly will insert the article into ;; `nntp-server-buffer' - so we'll save some time by not having to ;; copy it from the server buffer into the article buffer. --- 2418,2423 ---- *************** *** 2508,2513 **** --- 2508,2514 ---- (buffer-read-only nil)) (erase-buffer) (gnus-kill-all-overlays) + (gnus-check-group-server) (when (gnus-request-article article group (current-buffer)) (when (numberp article) (gnus-async-prefetch-next group article gnus-summary-buffer) *** pub/qgnus/lisp/gnus-cache.el Wed Jun 3 04:02:08 1998 --- qgnus/lisp/gnus-cache.el Fri Jun 26 04:26:36 1998 *************** *** 405,411 **** (defun gnus-cache-update-article (group article) "If ARTICLE is in the cache, remove it and re-enter it." ! (when (gnus-cache-possibly-remove-article article nil nil nil t) (let ((gnus-use-cache nil)) (gnus-cache-possibly-enter-article gnus-newsgroup-name article (gnus-summary-article-header article) --- 405,412 ---- (defun gnus-cache-update-article (group article) "If ARTICLE is in the cache, remove it and re-enter it." ! (gnus-cache-change-buffer group) ! (when (gnus-cache-possibly-remove-article article nil nil nil t) (let ((gnus-use-cache nil)) (gnus-cache-possibly-enter-article gnus-newsgroup-name article (gnus-summary-article-header article) *** pub/qgnus/lisp/gnus-msg.el Thu Jun 25 08:50:46 1998 --- qgnus/lisp/gnus-msg.el Fri Jun 26 04:26:36 1998 *************** *** 424,435 **** (push (list 'gnus-inews-add-to-address pgroup) message-send-actions))) (set-buffer gnus-article-copy) ! (message-wide-reply to-address ! (gnus-group-find-parameter ! gnus-newsgroup-name 'broken-reply-to)))) (when yank (gnus-inews-yank-articles yank)))))) (defun gnus-post-method (arg group &optional silent) "Return the posting method based on GROUP and ARG. If SILENT, don't prompt the user." --- 424,442 ---- (push (list 'gnus-inews-add-to-address pgroup) message-send-actions))) (set-buffer gnus-article-copy) ! (gnus-msg-treat-broken-reply-to) ! (message-wide-reply to-address))) (when yank (gnus-inews-yank-articles yank)))))) + (defun gnus-msg-treat-broken-reply-to () + "Remove the Reply-to header iff broken-reply-to." + (when (gnus-group-find-parameter + gnus-newsgroup-name 'broken-reply-to) + (save-restriction + (message-narrow-to-head) + (message-remove-header "reply-to")))) + (defun gnus-post-method (arg group &optional silent) "Return the posting method based on GROUP and ARG. If SILENT, don't prompt the user." *************** *** 582,589 **** (gnus-setup-message (if yank 'reply-yank 'reply) (gnus-summary-select-article) (set-buffer (gnus-copy-article-buffer)) ! (message-reply nil wide (gnus-group-find-parameter ! gnus-newsgroup-name 'broken-reply-to)) (when yank (gnus-inews-yank-articles yank))))) --- 589,596 ---- (gnus-setup-message (if yank 'reply-yank 'reply) (gnus-summary-select-article) (set-buffer (gnus-copy-article-buffer)) ! (gnus-msg-treat-broken-reply-to) ! (message-reply nil wide) (when yank (gnus-inews-yank-articles yank))))) *** pub/qgnus/lisp/gnus-score.el Wed Jun 3 04:02:14 1998 --- qgnus/lisp/gnus-score.el Fri Jun 26 04:26:38 1998 *************** *** 454,460 **** (gnus-define-keys (gnus-summary-score-map "V" gnus-summary-mode-map) "s" gnus-summary-set-score - "a" gnus-summary-score-entry "S" gnus-summary-current-score "c" gnus-score-change-score-file "C" gnus-score-customize --- 454,459 ---- *************** *** 752,771 **** DATE is the expire date, or nil for no expire, or 'now for immediate expire. If optional argument `PROMPT' is non-nil, allow user to edit match. If optional argument `SILENT' is nil, show effect of score entry." - (interactive - (list (completing-read "Header: " - gnus-header-index - (lambda (x) (fboundp (nth 2 x))) - t) - (read-string "Match: ") - (if (y-or-n-p "Use regexp match? ") 'r 's) - (and current-prefix-arg - (prefix-numeric-value current-prefix-arg)) - (cond ((not (y-or-n-p "Add to score file? ")) - 'now) - ((y-or-n-p "Expire kill? ") - (current-time-string)) - (t nil)))) ;; Regexp is the default type. (when (eq type t) (setq type 'r)) --- 751,756 ---- *** pub/qgnus/lisp/gnus-sum.el Thu Jun 25 08:50:51 1998 --- qgnus/lisp/gnus-sum.el Fri Jun 26 04:26:42 1998 *************** *** 5888,5895 **** (nnmail-time-since (nnmail-date-to-time date)) cutoff)) (when (if younger-p ! (not is-younger) ! is-younger) (push (gnus-data-number d) articles)))) (gnus-summary-limit (nreverse articles))) (gnus-summary-position-point))) --- 5888,5895 ---- (nnmail-time-since (nnmail-date-to-time date)) cutoff)) (when (if younger-p ! is-younger ! (not is-younger)) (push (gnus-data-number d) articles)))) (gnus-summary-limit (nreverse articles))) (gnus-summary-position-point))) *************** *** 7212,7218 **** gnus-newsgroup-name) (error "The current newsgroup does not support article deletion")) ;; Compute the list of articles to delete. ! (let ((articles (gnus-summary-work-articles n)) not-deleted) (if (and gnus-novice-user (not (gnus-yes-or-no-p --- 7212,7218 ---- gnus-newsgroup-name) (error "The current newsgroup does not support article deletion")) ;; Compute the list of articles to delete. ! (let ((articles (sort (copy-sequence (gnus-summary-work-articles n)) '<)) not-deleted) (if (and gnus-novice-user (not (gnus-yes-or-no-p *** pub/qgnus/lisp/gnus.el Thu Jun 25 08:50:53 1998 --- qgnus/lisp/gnus.el Fri Jun 26 04:26:44 1998 *************** *** 250,256 **** :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "5.6.14" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) --- 250,256 ---- :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) ! (defconst gnus-version-number "5.6.15" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) *************** *** 2476,2482 **** "Collapse GROUP name LEVELS. Select methods are stripped and any remote host name is stripped down to just the host name." ! (let* ((name "") (foreign "") (depth -1) (skip 1) (levels (or levels (progn (while (string-match "\\." group skip) --- 2476,2485 ---- "Collapse GROUP name LEVELS. Select methods are stripped and any remote host name is stripped down to just the host name." ! (let* ((name "") ! (foreign "") ! (depth 0) ! (skip 1) (levels (or levels (progn (while (string-match "\\." group skip) *** pub/qgnus/lisp/message.el Wed Jun 24 03:32:40 1998 --- qgnus/lisp/message.el Fri Jun 26 04:26:46 1998 *************** *** 1050,1056 **** If FIRST, only remove the first instance of the header. Return the number of headers removed." (goto-char (point-min)) ! (let ((regexp (if is-regexp header (concat "^" header ":"))) (number 0) (case-fold-search t) last) --- 1050,1056 ---- If FIRST, only remove the first instance of the header. Return the number of headers removed." (goto-char (point-min)) ! (let ((regexp (if is-regexp header (concat "^" (regexp-quote header) ":"))) (number 0) (case-fold-search t) last) *************** *** 3204,3210 **** (Subject . ,(or subject "")))))) ;;;###autoload ! (defun message-reply (&optional to-address wide ignore-reply-to) "Start editing a reply to the article in the current buffer." (interactive) (let ((cur (current-buffer)) --- 3204,3210 ---- (Subject . ,(or subject "")))))) ;;;###autoload ! (defun message-reply (&optional to-address wide) "Start editing a reply to the article in the current buffer." (interactive) (let ((cur (current-buffer)) *************** *** 3231,3237 **** to (message-fetch-field "to") cc (message-fetch-field "cc") mct (message-fetch-field "mail-copies-to") ! reply-to (unless ignore-reply-to (message-fetch-field "reply-to")) references (message-fetch-field "references") message-id (message-fetch-field "message-id" t)) ;; Remove any (buggy) Re:'s that are present and make a --- 3231,3237 ---- to (message-fetch-field "to") cc (message-fetch-field "cc") mct (message-fetch-field "mail-copies-to") ! reply-to (message-fetch-field "reply-to") references (message-fetch-field "references") message-id (message-fetch-field "message-id" t)) ;; Remove any (buggy) Re:'s that are present and make a *************** *** 3311,3320 **** cur))) ;;;###autoload ! (defun message-wide-reply (&optional to-address ignore-reply-to) "Make a \"wide\" reply to the message in the current buffer." (interactive) ! (message-reply to-address t ignore-reply-to)) ;;;###autoload (defun message-followup (&optional to-newsgroups) --- 3311,3320 ---- cur))) ;;;###autoload ! (defun message-wide-reply (&optional to-address) "Make a \"wide\" reply to the message in the current buffer." (interactive) ! (message-reply to-address t)) ;;;###autoload (defun message-followup (&optional to-newsgroups) *** pub/qgnus/lisp/nnagent.el Mon Jun 1 04:30:39 1998 --- qgnus/lisp/nnagent.el Fri Jun 26 04:26:46 1998 *************** *** 27,33 **** (require 'nnheader) (require 'nnoo) ! (require 'cl) (require 'gnus-agent) (require 'nnml) --- 27,33 ---- (require 'nnheader) (require 'nnoo) ! (eval-when-compile (require 'cl)) (require 'gnus-agent) (require 'nnml) *** pub/qgnus/lisp/nnfolder.el Wed Jun 3 04:02:28 1998 --- qgnus/lisp/nnfolder.el Fri Jun 26 04:26:47 1998 *************** *** 31,37 **** (require 'message) (require 'nnmail) (require 'nnoo) ! (require 'cl) (require 'gnus-util) (nnoo-declare nnfolder) --- 31,37 ---- (require 'message) (require 'nnmail) (require 'nnoo) ! (eval-when-compile (require 'cl)) (require 'gnus-util) (nnoo-declare nnfolder) *************** *** 397,410 **** (save-excursion (set-buffer buffer) (goto-char (point-min)) ! (when (looking-at "X-From-Line: ") ! (replace-match "From ")) (nnfolder-normalize-buffer) (set-buffer nnfolder-current-buffer) (goto-char (point-min)) (if (not (nnfolder-goto-article article)) nil ! (nnfolder-delete-mail t) (insert-buffer-substring buffer) (nnfolder-save-buffer) t))) --- 397,412 ---- (save-excursion (set-buffer buffer) (goto-char (point-min)) ! (if (looking-at "X-From-Line: ") ! (replace-match "From ") ! (unless (looking-at message-unix-mail-delimiter) ! (insert "From nobody " (current-time-string) "\n"))) (nnfolder-normalize-buffer) (set-buffer nnfolder-current-buffer) (goto-char (point-min)) (if (not (nnfolder-goto-article article)) nil ! (nnfolder-delete-mail) (insert-buffer-substring buffer) (nnfolder-save-buffer) t))) *** pub/qgnus/lisp/nngateway.el Wed Jun 24 03:32:40 1998 --- qgnus/lisp/nngateway.el Fri Jun 26 04:26:47 1998 *************** *** 62,68 **** (insert mail-header-separator "\n") (widen) (let (message-required-mail-headers) ! (funcall message-send-mail-function)))))) ;;; Internal functions --- 62,69 ---- (insert mail-header-separator "\n") (widen) (let (message-required-mail-headers) ! (funcall message-send-mail-function)) ! t)))) ;;; Internal functions *** pub/qgnus/lisp/nnheader.el Mon Jun 1 04:30:42 1998 --- qgnus/lisp/nnheader.el Fri Jun 26 04:26:47 1998 *************** *** 773,779 **** --- 773,781 ---- (let ((format-alist nil) (auto-mode-alist (nnheader-auto-mode-alist)) (default-major-mode 'fundamental-mode) + (enable-local-variables nil) (after-insert-file-functions nil) + (find-file-hooks nil) (coding-system-for-read nnheader-file-coding-system)) (insert-file-contents filename visit beg end replace))) *** pub/qgnus/lisp/nnmail.el Wed Jun 24 03:32:42 1998 --- qgnus/lisp/nnmail.el Fri Jun 26 04:26:49 1998 *************** *** 25,31 **** ;;; Code: ! (eval-when-compile (require 'cl)) (require 'nnheader) (require 'timezone) --- 25,31 ---- ;;; Code: ! (require 'cl) (require 'nnheader) (require 'timezone) *** pub/qgnus/lisp/ChangeLog Thu Jun 25 08:50:45 1998 --- qgnus/lisp/ChangeLog Fri Jun 26 04:26:33 1998 *************** *** 1,3 **** --- 1,45 ---- + 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. *** pub/qgnus/texi/gnus.texi Thu Jun 25 08:51:02 1998 --- qgnus/texi/gnus.texi Fri Jun 26 04:26:58 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Gnus 5.6.14 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename gnus ! @settitle Gnus 5.6.15 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 316,322 **** @tex @titlepage ! @title Gnus 5.6.14 Manual @author by Lars Magne Ingebrigtsen @page --- 316,322 ---- @tex @titlepage ! @title Gnus 5.6.15 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 352,358 **** spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Gnus 5.6.14. @end ifinfo --- 352,358 ---- spool or your mbox file. All at the same time, if you want to push your luck. ! This manual corresponds to Gnus 5.6.15. @end ifinfo *************** *** 1942,1948 **** If @code{gnus-activate-foreign-newsgroups} is a positive number, Gnus will check all foreign groups with this level or lower at startup. This might take quite a while, especially if you subscribe to lots of ! groups from different @sc{nntp} servers. @node Group Parameters --- 1942,1950 ---- If @code{gnus-activate-foreign-newsgroups} is a positive number, Gnus will check all foreign groups with this level or lower at startup. This might take quite a while, especially if you subscribe to lots of ! groups from different @sc{nntp} servers. Also @pxref{Group Levels}; ! @code{gnus-activate-level} also affects activation of foreign ! newsgroups. @node Group Parameters *************** *** 11872,11883 **** around with your score files behind Gnus' back and want to see the effect you're having. - @item V a - @kindex V a (Summary) - @findex gnus-summary-score-entry - Add a new score entry, and allow specifying all elements - (@code{gnus-summary-score-entry}). - @item V c @kindex V c (Summary) @findex gnus-score-change-score-file --- 11874,11879 ---- *************** *** 15779,15785 **** * ding Gnus:: New things in Gnus 5.0/5.1, the first new Gnus. * September Gnus:: The Thing Formally Known As Gnus 5.3/5.3. * Red Gnus:: Third time best---Gnus 5.4/5.5. ! * Quassia Gnus:: Two times two is four, or Gnus 5.6.14. @end menu These lists are, of course, just @emph{short} overviews of the --- 15775,15781 ---- * ding Gnus:: New things in Gnus 5.0/5.1, the first new Gnus. * September Gnus:: The Thing Formally Known As Gnus 5.3/5.3. * Red Gnus:: Third time best---Gnus 5.4/5.5. ! * Quassia Gnus:: Two times two is four, or Gnus 5.6.15. @end menu These lists are, of course, just @emph{short} overviews of the *************** *** 16314,16320 **** @node Quassia Gnus @subsubsection Quassia Gnus ! New features in Gnus 5.6.14: @itemize @bullet --- 16310,16316 ---- @node Quassia Gnus @subsubsection Quassia Gnus ! New features in Gnus 5.6.15: @itemize @bullet *************** *** 17612,17617 **** --- 17608,17618 ---- @item Rething the Agent active file thing. `M-g' doesn't update the active file, for instance. + + @item + With dummy roots, `^' and then selecing the first article + in any other dummy thread will make Gnus highlight the + dummy root instead of the first article. @item Solve the halting problem. *** pub/qgnus/texi/message.texi Thu Jun 25 08:51:03 1998 --- qgnus/texi/message.texi Fri Jun 26 04:26:58 1998 *************** *** 1,7 **** \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Message 5.6.14 Manual @synindex fn cp @synindex vr cp @synindex pg cp --- 1,7 ---- \input texinfo @c -*-texinfo-*- @setfilename message ! @settitle Message 5.6.15 Manual @synindex fn cp @synindex vr cp @synindex pg cp *************** *** 42,48 **** @tex @titlepage ! @title Message 5.6.14 Manual @author by Lars Magne Ingebrigtsen @page --- 42,48 ---- @tex @titlepage ! @title Message 5.6.15 Manual @author by Lars Magne Ingebrigtsen @page *************** *** 83,89 **** * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Message 5.6.14. Message is distributed with the Gnus distribution bearing the same version number as this manual has. --- 83,89 ---- * Key Index:: List of Message mode keys. @end menu ! This manual corresponds to Message 5.6.15. Message is distributed with the Gnus distribution bearing the same version number as this manual has. *** pub/qgnus/texi/ChangeLog Wed Jun 24 03:32:52 1998 --- qgnus/texi/ChangeLog Fri Jun 26 04:26:58 1998 *************** *** 1,3 **** --- 1,7 ---- + 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.