From: ichikawa Date: Thu, 6 Aug 1998 13:10:15 +0000 (+0000) Subject: Importing gnus-5.6.29 X-Git-Tag: gnus-5_6_29~1 X-Git-Url: http://git.chise.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40d4030c3187fb1e58ef8629177b7bab11108e16;p=elisp%2Fgnus.git- Importing gnus-5.6.29 --- 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 db6cf94..0e153da 100644 --- a/lisp/gnus-agent.el +++ b/lisp/gnus-agent.el @@ -1358,9 +1358,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 91b31ca..fef8d64 100644 --- a/lisp/gnus-start.el +++ b/lisp/gnus-start.el @@ -429,7 +429,8 @@ Can be used to turn version control on or off." (file-exists-p (concat file ".el")) (file-exists-p (concat file ".elc"))) (condition-case var - (let ((coding-system-for-read 'binary)) + (let ((coding-system-for-read + gnus-startup-file-coding-system)) (load file nil t)) (error (error "Error in %s: %s" file var))))))))) @@ -1490,7 +1491,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 fd1039f..c517342 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -218,10 +218,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) @@ -282,7 +282,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) @@ -2508,7 +2510,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. @@ -2519,9 +2521,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 @@ -3872,7 +3875,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 f7dc720..bcd2bbd 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -250,7 +250,7 @@ is restarted, and sometimes reloaded." :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "5.6.28" +(defconst gnus-version-number "5.6.29" "Version number for this version of Gnus.") (defconst gnus-version (format "Gnus v%s" gnus-version-number) @@ -2685,11 +2685,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)) @@ -2699,7 +2702,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/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 6794600..885489e 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -1,7 +1,7 @@ \input texinfo @c -*-texinfo-*- @setfilename gnus -@settitle Gnus 5.6.28 Manual +@settitle Gnus 5.6.29 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 Gnus 5.6.28 Manual +@title Gnus 5.6.29 Manual @author by Lars Magne Ingebrigtsen @page @@ -352,7 +352,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 Gnus 5.6.28. +This manual corresponds to Gnus 5.6.29. @end ifinfo @@ -3499,8 +3499,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 @@ -8358,6 +8360,7 @@ So here's a new example: (signature-file "~/.mail-signature")))) @end lisp + @node Drafts @section Drafts @cindex drafts @@ -11535,7 +11538,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 @@ -15077,7 +15080,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}. @@ -15384,7 +15387,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'' -- @@ -15861,7 +15864,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 @@ -16396,7 +16399,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