From 2ad6c8c594776e2edabf192290f0da5972f952da Mon Sep 17 00:00:00 2001 From: ichikawa Date: Thu, 6 Aug 1998 13:23:31 +0000 Subject: [PATCH] Sync up with gnus-5.6.29 --- ChangeLog | 10 +++++++ Makefile.in | 2 +- lisp/ChangeLog | 62 ++++++++++++++++++++++++++++++++++++++ lisp/gnus-agent.el | 8 +++-- lisp/gnus-group.el | 2 -- lisp/gnus-salt.el | 84 ++++++++++++++++++++++++++-------------------------- lisp/gnus-score.el | 14 ++++++--- lisp/gnus-start.el | 2 +- lisp/gnus-sum.el | 28 +++++++++++------- lisp/gnus-topic.el | 5 +++- lisp/gnus.el | 19 +++++++----- lisp/nnmail.el | 10 +++---- lisp/smtp.el | 2 +- texi/ChangeLog | 8 +++++ texi/gnus.texi | 23 +++++++------- texi/message.texi | 26 +++++++++------- 16 files changed, 207 insertions(+), 98 deletions(-) diff --git a/ChangeLog b/ChangeLog index a08ea00..8ac1d32 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +1998-08-06 Katsumi Yamaoka + + *lisp/smtp.el: Do not insert empty line at the end of message. + +1998-08-06 Tatsuya Ichikawa + + * lisp/gnus.el (gnus-version-number): Update to 6.8.6. + + * Sync up with Gnus 5.6.29. + 1998-08-05 Tatsuya Ichikawa * lisp/gnus-start.el (gnus-read-init-file): Fix indent. diff --git a/Makefile.in b/Makefile.in index c6205a8..7c675a4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -37,7 +37,7 @@ x: distclean: make clean - rm -r *~ + rm -rf *~ for i in lisp texi; do (cd $$i; make distclean); done rm -f config.log config.status Makefile diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 429b2d6..3589498 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,65 @@ +Thu Aug 6 07:58:17 1998 Lars Magne Ingebrigtsen + + * gnus.el: Gnus v5.6.29 is released. + +1998-08-06 07:10:31 Lars Magne Ingebrigtsen + + * gnus-agent.el (gnus-agent-expire): Check whether (caar + gnus-agent-article-alist) is nil. + + * gnus.el (gnus-read-method): Allow selecting predefined servers. + + * gnus-topic.el (gnus-topic-update-topic-line): Compute right + number when inserting missing topic lines. + + * gnus-start.el (gnus-get-unread-articles): Check that the group + is alive. + + * gnus-score.el (gnus-score-load-score-alist): Better error + messaging. + +Tue Aug 4 09:42:31 1998 Kurt Swanson + + * gnus-salt.el (gnus-pick-mouse-pick-region): Fix picking bug due + to use of gnus-read-event-char. + +1998-07-28 Dave Love + + * gnus-group.el (gnus-group-fetch-faq): Don't mung dots in group + name. + +1998-07-27 Dave Love + + * gnus-topic.el (gnus-topic-mode-map): Provide Emacs tty + alternatives to [tab], [(meta tab)]. + +1998-08-06 04:41:38 Lars Magne Ingebrigtsen + + * 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. diff --git a/lisp/gnus-agent.el b/lisp/gnus-agent.el index a525a0e..33ab63c 100644 --- a/lisp/gnus-agent.el +++ b/lisp/gnus-agent.el @@ -1369,9 +1369,11 @@ The following commands are available: (setq gnus-agent-article-alist (cdr first)) ;;; Mark all articles up to the first article ;;; in `gnus-article-alist' as read. - (setcar (nthcdr 2 info) - (gnus-range-add - (nth 2 info) (cons 1 (- (caar gnus-agent-article-alist) 1)))) + (when (caar gnus-agent-article-alist) + (setcar (nthcdr 2 info) + (gnus-range-add + (nth 2 info) + (cons 1 (- (caar gnus-agent-article-alist) 1))))) (gnus-dribble-enter (concat "(gnus-group-set-info '" (gnus-prin1-to-string info) diff --git a/lisp/gnus-group.el b/lisp/gnus-group.el index 71ea9ad..1f3b8d3 100644 --- a/lisp/gnus-group.el +++ b/lisp/gnus-group.el @@ -2954,8 +2954,6 @@ to use." (while (and (not found) (setq dir (pop dirs))) (let ((name (gnus-group-real-name group))) - (while (string-match "\\." name) - (setq name (replace-match "/" t t name))) (setq file (concat (file-name-as-directory dir) name))) (if (not (file-exists-p file)) (gnus-message 1 "No such file: %s" file) diff --git a/lisp/gnus-salt.el b/lisp/gnus-salt.el index 1f881cf..5dc624e 100644 --- a/lisp/gnus-salt.el +++ b/lisp/gnus-salt.el @@ -241,48 +241,48 @@ This must be bound to a button-down mouse event." ;; (but not outside the window where the drag started). (let (event end end-point last-end-point (end-of-range (point))) (track-mouse - (while (progn - (setq event (gnus-read-event-char)) - (or (mouse-movement-p event) - (eq (car-safe event) 'switch-frame))) - (if (eq (car-safe event) 'switch-frame) - nil - (setq end (event-end event) - end-point (posn-point end)) - (when end-point - (setq last-end-point end-point)) - - (cond - ;; Are we moving within the original window? - ((and (eq (posn-window end) start-window) - (integer-or-marker-p end-point)) - ;; Go to START-POINT first, so that when we move to END-POINT, - ;; if it's in the middle of intangible text, - ;; point jumps in the direction away from START-POINT. - (goto-char start-point) - (goto-char end-point) - (gnus-pick-article) - ;; In case the user moved his mouse really fast, pick - ;; articles on the line between this one and the last one. - (let* ((this-line (1+ (count-lines 1 end-point))) - (min-line (min this-line start-line)) - (max-line (max this-line start-line))) - (while (< min-line max-line) - (goto-line min-line) - (gnus-pick-article) - (setq min-line (1+ min-line))) - (setq start-line this-line)) - (when (zerop (% click-count 3)) - (setq end-of-range (point)))) - (t - (let ((mouse-row (cdr (cdr (mouse-position))))) - (cond - ((null mouse-row)) - ((< mouse-row top) - (mouse-scroll-subr start-window (- mouse-row top))) - ((>= mouse-row bottom) - (mouse-scroll-subr start-window - (1+ (- mouse-row bottom))))))))))) + (while (progn + (setq event (cdr (gnus-read-event-char))) + (or (mouse-movement-p event) + (eq (car-safe event) 'switch-frame))) + (if (eq (car-safe event) 'switch-frame) + nil + (setq end (event-end event) + end-point (posn-point end)) + (when end-point + (setq last-end-point end-point)) + + (cond + ;; Are we moving within the original window? + ((and (eq (posn-window end) start-window) + (integer-or-marker-p end-point)) + ;; Go to START-POINT first, so that when we move to END-POINT, + ;; if it's in the middle of intangible text, + ;; point jumps in the direction away from START-POINT. + (goto-char start-point) + (goto-char end-point) + (gnus-pick-article) + ;; In case the user moved his mouse really fast, pick + ;; articles on the line between this one and the last one. + (let* ((this-line (1+ (count-lines 1 end-point))) + (min-line (min this-line start-line)) + (max-line (max this-line start-line))) + (while (< min-line max-line) + (goto-line min-line) + (gnus-pick-article) + (setq min-line (1+ min-line))) + (setq start-line this-line)) + (when (zerop (% click-count 3)) + (setq end-of-range (point)))) + (t + (let ((mouse-row (cdr (cdr (mouse-position))))) + (cond + ((null mouse-row)) + ((< mouse-row top) + (mouse-scroll-subr start-window (- mouse-row top))) + ((>= mouse-row bottom) + (mouse-scroll-subr start-window + (1+ (- mouse-row bottom))))))))))) (when (consp event) (let ((fun (key-binding (vector (car event))))) ;; Run the binding of the terminating up-event, if possible. diff --git a/lisp/gnus-score.el b/lisp/gnus-score.el index b7b203d..9b673ce 100644 --- a/lisp/gnus-score.el +++ b/lisp/gnus-score.el @@ -1213,10 +1213,16 @@ SCORE is the score to add." (read (current-buffer)) (error (gnus-error 3.2 "Problem with score file %s" file)))))) - (if (eq (car alist) 'setq) - ;; This is an old-style score file. - (setq gnus-score-alist (gnus-score-transform-old-to-new alist)) - (setq gnus-score-alist alist)) + (cond + ((and alist + (atom alist)) + ;; Bogus score file. + (error "Invalid syntax with score file %s" file)) + ((eq (car alist) 'setq) + ;; This is an old-style score file. + (setq gnus-score-alist (gnus-score-transform-old-to-new alist))) + (t + (setq gnus-score-alist alist))) ;; Check the syntax of the score file. (setq gnus-score-alist (gnus-score-check-syntax gnus-score-alist file))))) diff --git a/lisp/gnus-start.el b/lisp/gnus-start.el index 07f2a9a..3ddba88 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -1489,7 +1489,7 @@ newsgroup." (when (<= (gnus-info-level info) foreign-level) (setq active (gnus-activate-group group 'scan)) ;; Let the Gnus agent save the active file. - (when (and gnus-agent gnus-plugged) + (when (and gnus-agent gnus-plugged active) (gnus-agent-save-group-info method (gnus-group-real-name group) active)) (unless (inline (gnus-virtual-group-p group)) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index e036b1e..4354e9b 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -222,10 +222,10 @@ to expose hidden threads." :group 'gnus-thread :type 'boolean) -(defcustom gnus-thread-ignore-subject nil - "*If non-nil, ignore subjects and do all threading based on the Reference header. -If nil, which is the default, articles that have different subjects -from their parents will start separate threads." +(defcustom gnus-thread-ignore-subject t + "*If non-nil, which is the default, ignore subjects and do all threading based on the Reference header. +If nil, articles that have different subjects from their parents will +start separate threads." :group 'gnus-thread :type 'boolean) @@ -286,7 +286,9 @@ will go to the next group without confirmation." (sexp :menu-tag "on" t))) (defcustom gnus-auto-select-same nil - "*If non-nil, select the next article with the same subject." + "*If non-nil, select the next article with the same subject. +If there are no more articles with the same subject, go to +the first unread article." :group 'gnus-summary-maneuvering :type 'boolean) @@ -2518,7 +2520,7 @@ the thread are to be displayed." (defun gnus-summary-read-group (group &optional show-all no-article kill-buffer no-display backward - select-article) + select-articles) "Start reading news in newsgroup GROUP. If SHOW-ALL is non-nil, already read articles are also listed. If NO-ARTICLE is non-nil, no article is selected initially. @@ -2529,9 +2531,10 @@ If NO-DISPLAY, don't generate a summary buffer." (let ((gnus-auto-select-next nil)) (or (gnus-summary-read-group-1 group show-all no-article - kill-buffer no-display) - (setq show-all nil) - select-article)))) + kill-buffer no-display + select-articles) + (setq show-all nil + select-articles nil))))) (eq gnus-auto-select-next 'quietly)) (set-buffer gnus-group-buffer) ;; The entry function called above goes to the next @@ -3894,7 +3897,12 @@ If SELECT-ARTICLES, only select those articles from GROUP." (unless (gnus-ephemeral-group-p gnus-newsgroup-name) (gnus-group-update-group group)) - (setq articles (or select-articles (gnus-articles-to-read group read-all))) + (if (setq articles select-articles) + (setq gnus-newsgroup-unselected + (gnus-sorted-intersection + gnus-newsgroup-unreads + (gnus-sorted-complement gnus-newsgroup-unreads articles))) + (setq articles (gnus-articles-to-read group read-all))) (cond ((null articles) diff --git a/lisp/gnus-topic.el b/lisp/gnus-topic.el index 108f3bc..cd211a7 100644 --- a/lisp/gnus-topic.el +++ b/lisp/gnus-topic.el @@ -647,7 +647,8 @@ articles in the topic and its subtopics." (when parent (forward-line -1) (gnus-topic-update-topic-line - parent (- (or old-unread 0) (or (gnus-group-topic-unread) 0)))) + parent + (max 0 (- (or old-unread 0) (or (gnus-group-topic-unread) 0))))) unread)) (defun gnus-topic-group-indentation () @@ -912,6 +913,8 @@ articles in the topic and its subtopics." "\M-#" gnus-topic-unmark-topic [tab] gnus-topic-indent [(meta tab)] gnus-topic-unindent + "\C-i" gnus-topic-indent + "\M-\C-i" gnus-topic-unindent gnus-mouse-2 gnus-mouse-pick-topic) ;; Define a new submap. diff --git a/lisp/gnus.el b/lisp/gnus.el index 2eac7c7..6e3b6c1 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -253,11 +253,11 @@ is restarted, and sometimes reloaded." (defconst gnus-product-name "T-gnus" "Product name of this version of gnus.") -(defconst gnus-version-number "6.8.5" +(defconst gnus-version-number "6.8.6" "Version number for this version of gnus.") (defconst gnus-version - (format "%s %s (based on Gnus 5.6.28; for SEMI 1.8, FLIM 1.8/1.9)" + (format "%s %s (based on Gnus 5.6.29; for SEMI 1.8, FLIM 1.8/1.9)" gnus-product-name gnus-version-number) "Version string for this version of gnus.") @@ -2681,11 +2681,14 @@ Disallow illegal group names." (defun gnus-read-method (prompt) "Prompt the user for a method. Allow completion over sensible values." - (let ((method - (completing-read - prompt (append gnus-valid-select-methods gnus-predefined-server-alist - gnus-server-alist) - nil t nil 'gnus-method-history))) + (let* ((servers + (append gnus-valid-select-methods + gnus-predefined-server-alist + gnus-server-alist)) + (method + (completing-read + prompt servers + nil t nil 'gnus-method-history))) (cond ((equal method "") (setq method gnus-select-method)) @@ -2695,7 +2698,7 @@ Allow completion over sensible values." (assoc method gnus-valid-select-methods)) (read-string "Address: ") ""))) - ((assoc method gnus-server-alist) + ((assoc method servers) method) (t (list (intern method) ""))))) diff --git a/lisp/nnmail.el b/lisp/nnmail.el index 4888255..a03c195 100644 --- a/lisp/nnmail.el +++ b/lisp/nnmail.el @@ -1351,14 +1351,14 @@ See the documentation for the variable `nnmail-split-fancy' for documentation." (unless (= beg pos) (push (substring newtext beg pos) expanded)) (when (< pos len) - ;; we hit a \, expand it. - (setq did-expand t) - (setq pos (1+ pos)) - (setq c (aref newtext pos)) + ;; We hit a \; expand it. + (setq did-expand t + pos (1+ pos) + c (aref newtext pos)) (if (not (or (= c ?\&) (and (>= c ?1) (<= c ?9)))) - ;; \ followed by some character we don't expand + ;; \ followed by some character we don't expand. (push (char-to-string c) expanded) ;; \& or \N (if (= c ?\&) diff --git a/lisp/smtp.el b/lisp/smtp.el index bea46d0..2a2706b 100644 --- a/lisp/smtp.el +++ b/lisp/smtp.el @@ -324,7 +324,7 @@ don't define this value." (setq this-line-end (point)) (setq sending-data nil) (setq sending-data (buffer-substring this-line this-line-end)) - (if (/= (forward-line 1) 0) + (if (or (/= (forward-line 1) 0) (eobp)) (setq data-continue nil))) (smtp-send-data-1 process sending-data)))) diff --git a/texi/ChangeLog b/texi/ChangeLog index 386b9b1..d575325 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,11 @@ +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 diff --git a/texi/gnus.texi b/texi/gnus.texi index 347da83..14350f8 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Semi-gnus 6.8.5 Manual +@settitle Semi-gnus 6.8.6 Manual @synindex fn cp @synindex vr cp @synindex pg cp @@ -316,7 +316,7 @@ into another language, under the above conditions for modified versions. @tex @titlepage -@title Semi-gnus 6.8.5 Manual +@title Semi-gnus 6.8.6 Manual @author by Lars Magne Ingebrigtsen @page @@ -359,7 +359,7 @@ internationalization/localization and multiscript features based on MULE API. So Semi-gnus does not discriminate various language communities. Oh, if you are a Klingon, please wait Unicode Next Generation. -This manual corresponds to Semi-gnus 6.8.5. +This manual corresponds to Semi-gnus 6.8.6. @end ifinfo @@ -3511,8 +3511,10 @@ without confirmation. Also @pxref{Group Levels}. If non-@code{nil}, all the movement commands will try to go to the next article with the same subject as the current. (@dfn{Same} here might mean @dfn{roughly equal}. See @code{gnus-summary-gather-subject-limit} -for details (@pxref{Customizing Threading}).) This variable is not -particularly useful if you use a threaded display. +for details (@pxref{Customizing Threading}).) If there are no more +articles with the same subject, go to the first unread article. + +This variable is not particularly useful if you use a threaded display. @item gnus-summary-check-current @vindex gnus-summary-check-current @@ -8359,6 +8361,7 @@ So here's a new example: (signature-file "~/.mail-signature")))) @end lisp + @node Drafts @section Drafts @cindex drafts @@ -11536,7 +11539,7 @@ Hook run in category buffers. @item gnus-category-line-format @vindex gnus-category-line-format Format of the lines in the category buffer (@pxref{Formatting -Variables}). Legal elements are: +Variables}). Valid elements are: @table @samp @item c @@ -15078,7 +15081,7 @@ foreground and background color of the splash page glyph. @item gnus-xmas-logo-color-style @vindex gnus-xmas-logo-color-style This is the key used to look up the color in the alist described above. -Legal values include @code{flame}, @code{pine}, @code{moss}, +Valid values include @code{flame}, @code{pine}, @code{moss}, @code{irish}, @code{sky}, @code{tin}, @code{velvet}, @code{grape}, @code{labia}, @code{berry}, @code{neutral}, and @code{september}. @@ -15385,7 +15388,7 @@ On July 28th 1996 work on Red Gnus was begun, and it was released on January 25th 1997 (after 84 releases) as ``Gnus 5.4'' (67 releases). On September 13th 1997, Quassia Gnus was started and lasted 37 -releases. If was released as ``Gnus 5.6.28' on March 8th 1998. +releases. If was released as ``Gnus 5.6.29' on March 8th 1998. If you happen upon a version of Gnus that has a prefixed name -- ``(ding) Gnus'', ``September Gnus'', ``Red Gnus'', ``Quassia Gnus'' -- @@ -15862,7 +15865,7 @@ actually are people who are using Gnus. Who'd'a thunk it! * 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.28. +* Quassia Gnus:: Two times two is four, or Gnus 5.6.29. @end menu These lists are, of course, just @emph{short} overviews of the @@ -16397,7 +16400,7 @@ Emphasized text can be properly fontisized: @node Quassia Gnus @subsubsection Quassia Gnus -New features in Gnus 5.6.28: +New features in Gnus 5.6.29: @itemize @bullet diff --git a/texi/message.texi b/texi/message.texi index 4cd5b5e..13e58d6 100644 --- a/texi/message.texi +++ b/texi/message.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename message -@settitle Message 5.6.28 Manual +@settitle Message 5.6.29 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 Message 5.6.28 Manual +@title Message 5.6.29 Manual @author by Lars Magne Ingebrigtsen @page @@ -83,7 +83,7 @@ Message mode buffers. * Key Index:: List of Message mode keys. @end menu -This manual corresponds to Message 5.6.28. Message is distributed with +This manual corresponds to Message 5.6.29. Message is distributed with the Gnus distribution bearing the same version number as this manual has. @@ -680,7 +680,7 @@ message. @item message-from-style @vindex message-from-style -Specifies how @code{From} headers should look. There are four legal +Specifies how @code{From} headers should look. There are four valid values: @table @code @@ -782,7 +782,7 @@ headers. @vindex message-required-news-headers @code{message-required-news-headers} a list of header symbols. These headers will either be automatically generated, or, if that's -impossible, they will be prompted for. The following symbols are legal: +impossible, they will be prompted for. The following symbols are valid: @table @code @@ -888,10 +888,16 @@ Other variables for customizing outgoing news articles: @item message-syntax-checks @vindex message-syntax-checks -If non-@code{nil}, Message will attempt to check the legality of the -headers, as well as some other stuff, before posting. You can control -the granularity of the check by adding or removing elements from this -list. Legal elements are: +Controls what syntax checks should not be performed on outgoing posts. +To disable checking of long signatures, for instance, add + +@lisp +(signature . disabled) +@end lisp + +to this list. + +Valid checks are: @table @code @item subject-cmsg @@ -912,7 +918,7 @@ Check whether the @code{From} header seems nice. @cindex long lines Check for too long lines. @item control-chars -Check for illegal characters. +Check for invalid characters. @item size Check for excessive size. @item new-text -- 1.7.10.4