From c6db10ab23ddb96d2e1131807f0598c93d625162 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Thu, 7 Feb 2002 00:55:03 +0000 Subject: [PATCH] Synch with Oort Gnus. --- lisp/ChangeLog | 35 +++++++++++++++++++++++++++++++++++ lisp/ChangeLog.1 | 4 ++++ lisp/gnus-art.el | 4 +++- lisp/gnus-msg.el | 10 +++++++++- lisp/gnus-sum.el | 34 +++++++++++++++++++++++++--------- lisp/gnus.el | 41 +++++++++++++++++++++-------------------- lisp/mm-partial.el | 5 +++-- lisp/mm-util.el | 5 ++++- lisp/nnagent.el | 7 +++---- lisp/nnweb.el | 8 +++++--- texi/ChangeLog | 5 +++++ texi/gnus-ja.texi | 4 ++-- texi/gnus.texi | 15 ++++++++------- 13 files changed, 127 insertions(+), 50 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0445647..9817a7b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,34 @@ +2002-02-06 Lars Magne Ingebrigtsen + + * gnus-msg.el (gnus-posting-styles): Add x-face-file. + (gnus-configure-posting-styles): Use it. + (gnus-configure-posting-styles): Remove trailing newspaces. + +2002-02-06 ShengHuo ZHU + + * gnus-sum.el (gnus-articles-to-read): Fetch all if the predicate + is non-nil. + + * mm-util.el (mm-use-find-coding-systems-region): Add doc. + + * gnus.el (gnus-server-to-method): Switch position with + gnus-server-get-method. + (gnus-agent): Add doc. + + * gnus-sum.el (gnus-article-no-strict-mime): New variable. + (gnus-summary-save-parts): Use it. + + * gnus-art.el (gnus-display-mime): Use it. + * mm-partial.el (mm-partial-find-parts): Use it. + + * nnweb.el (nnweb-google-parse-1): Use a correct format of date. + + * gnus-agent.el (gnus-agent-summary-make-menu-bar): Fix typo. + From Stefan Reich,Av(Br . + + * nnagent.el (nnagent-request-expire-articles): Don't delete + files. + 2002-02-05 ShengHuo ZHU * message.el (message-gen-unsubscribed-mft): New function. @@ -8778,6 +8809,10 @@ * ChangeLog: Moved to ChangeLog.1. + Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. + Copying and distribution of this file, with or without modification, + are permitted provided the copyright notice and this notice are preserved. + ;; Local Variables: ;; coding: iso-2022-7bit ;; End: diff --git a/lisp/ChangeLog.1 b/lisp/ChangeLog.1 index 3cfb883..c88d229 100644 --- a/lisp/ChangeLog.1 +++ b/lisp/ChangeLog.1 @@ -10095,6 +10095,10 @@ Sat Aug 29 19:32:06 1998 Lars Magne Ingebrigtsen * gnus.el: Gnus v0.2 is released. + Copyright (C) 1998, 1999, 2000 Free Software Foundation, Inc. + Copying and distribution of this file, with or without modification, + are permitted provided the copyright notice and this notice are preserved. + ;; Local Variables: ;; coding: iso-2022-7bit ;; End: diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index 1865185..f2fa92f 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -4517,7 +4517,9 @@ If no internal viewer is available, use an external viewer." ;; We have to do this since selecting the window ;; may change the point. So we set the window point. (set-window-point window point))) - (let* ((handles (or ihandles (mm-dissect-buffer) (mm-uu-dissect))) + (let* ((handles (or ihandles (mm-dissect-buffer + gnus-article-no-strict-mime) + (mm-uu-dissect))) buffer-read-only handle name type b e display) (when (and (not ihandles) (not gnus-displaying-mime)) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index 130c814..47040ae 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -132,6 +132,7 @@ See Info node `(gnus)Posting Styles'." (const signature-file) (const organization) (const address) + (const x-face-file) (const name) (const body) (symbol) @@ -1791,13 +1792,20 @@ this is a reply." ((listp value) (eval value)))) ;; Translate obsolescent value. - (when (eq element 'signature-file) + (cond + ((eq element 'signature-file) (setq element 'signature filep t)) + ((eq element 'x-face-file) + (setq element 'x-face + filep t))) ;; Get the contents of file elems. (when (and filep v) (setq v (with-temp-buffer (insert-file-contents v) + (goto-char (point-max)) + (while (bolp) + (delete-char -1)) (buffer-string)))) (setq results (delq (assoc element results) results)) (push (cons element v) results)))) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 8b2fda2..9bc2b59 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -1060,9 +1060,20 @@ that were fetched. Say, for nnultimate groups." (defcustom gnus-summary-muttprint-program "muttprint" "Command (and optional arguments) used to run Muttprint." + :version "21.3" :group 'gnus-summary :type 'string) +(defcustom gnus-article-no-strict-mime nil + "If non-nil, don't require strict MIME. +Some brain-damaged MUA/MTA, e.g. Lotus Domino 5.0.6 clients, does not +supply the MIME-Version header or deliberately strip it From the mail. +Set it to non-nil, Gnus will treat some articles as MIME even if +the MIME-Version header is missed." + :version "21.3" + :type 'boolean + :group 'gnus-article) + ;;; Internal variables (defvar gnus-summary-display-cache nil) @@ -4437,7 +4448,7 @@ or a straight list of headers." (delq number gnus-newsgroup-unreads)) (if gnus-newsgroup-auto-expire (setq gnus-newsgroup-expirable - (gnus-add-to-sorted-list + (gnus-add-to-sorted-list gnus-newsgroup-expirable number)) (push (cons number gnus-low-score-mark) gnus-newsgroup-reads)))) @@ -4884,7 +4895,8 @@ If SELECT-ARTICLES, only select those articles from GROUP." (if (or read-all (and (zerop (length gnus-newsgroup-marked)) (zerop (length gnus-newsgroup-unreads))) - (eq gnus-newsgroup-display 'gnus-not-ignore)) + ;; Fetch all if the predicate is non-nil. + gnus-newsgroup-display) ;; We want to select the headers for all the articles in ;; the group, so we select either all the active ;; articles in the group, or (if that's nil), the @@ -4893,7 +4905,7 @@ If SELECT-ARTICLES, only select those articles from GROUP." (gnus-uncompress-range (gnus-active group)) (gnus-cache-articles-in-group group)) ;; Select only the "normal" subset of articles. - (gnus-sorted-nunion + (gnus-sorted-nunion (gnus-sorted-union gnus-newsgroup-dormant gnus-newsgroup-marked) gnus-newsgroup-unreads))) (scored-list (gnus-killed-articles gnus-newsgroup-killed articles)) @@ -4905,6 +4917,8 @@ If SELECT-ARTICLES, only select those articles from GROUP." (cond ((numberp read-all) read-all) + ((numberp gnus-newsgroup-display) + gnus-newsgroup-display) (t (condition-case () (cond @@ -6035,7 +6049,7 @@ The prefix argument ALL means to select all articles." (set-buffer gnus-group-buffer) (gnus-undo-force-boundary)) (gnus-update-read-articles - group (gnus-sorted-union + group (gnus-sorted-union gnus-newsgroup-unreads gnus-newsgroup-unselected)) ;; Set the current article marks. (let ((gnus-newsgroup-scored @@ -9301,15 +9315,15 @@ Iff NO-EXPIRE, auto-expiry will be inhibited." (setq gnus-newsgroup-reads (delq article gnus-newsgroup-reads)) (cond ((= mark gnus-ticked-mark) (setq gnus-newsgroup-marked - (gnus-add-to-sorted-list gnus-newsgroup-marked + (gnus-add-to-sorted-list gnus-newsgroup-marked article))) ((= mark gnus-dormant-mark) (setq gnus-newsgroup-dormant - (gnus-add-to-sorted-list gnus-newsgroup-dormant + (gnus-add-to-sorted-list gnus-newsgroup-dormant article))) (t (setq gnus-newsgroup-unreads - (gnus-add-to-sorted-list gnus-newsgroup-unreads + (gnus-add-to-sorted-list gnus-newsgroup-unreads article)))) (gnus-pull article gnus-newsgroup-reads) @@ -10420,7 +10434,9 @@ If REVERSE, save parts that do not match TYPE." (save-excursion (set-buffer gnus-article-buffer) (let ((handles (or gnus-article-mime-handles - (mm-dissect-buffer) (mm-uu-dissect)))) + (mm-dissect-buffer + gnus-article-no-strict-mime) + (mm-uu-dissect)))) (when handles (gnus-summary-save-parts-1 type dir handles reverse) (unless gnus-article-mime-handles ;; Don't destroy this case. @@ -11128,7 +11144,7 @@ returned." (defun gnus-summary-insert-articles (articles) (when (setq articles (gnus-sorted-difference articles - (mapcar (lambda (h) + (mapcar (lambda (h) (mail-header-number h)) gnus-newsgroup-headers))) (setq gnus-newsgroup-headers diff --git a/lisp/gnus.el b/lisp/gnus.el index 464d596..5dd5e86 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -1805,7 +1805,7 @@ face." (defcustom gnus-agent-cache t "Whether Gnus use agent cache." - :version "21.1" + :version "21.3" :group 'gnus-agent :type 'boolean) @@ -1818,8 +1818,9 @@ covered by that variable." :group 'gnus-charset) (defcustom gnus-agent nil - "Whether we want to use the Gnus agent or not." - :version "21.1" + "Whether we want to use the Gnus agent or not. +Putting (gnus-agentize) in ~/.gnus is obsolete by (setq gnus-agent t)." + :version "21.3" :group 'gnus-agent :type 'boolean) @@ -2756,23 +2757,6 @@ that that variable is buffer-local to the summary buffers." (nth 1 method)))) method))) -(defsubst gnus-server-get-method (group method) - ;; Input either a server name, and extended server name, or a - ;; select method, and return a select method. - (cond ((stringp method) - (gnus-server-to-method method)) - ((equal method gnus-select-method) - gnus-select-method) - ((and (stringp (car method)) - group) - (gnus-server-extend-method group method)) - ((and method - (not group) - (equal (cadr method) "")) - method) - (t - (gnus-server-add-address method)))) - (defsubst gnus-server-to-method (server) "Map virtual server names to select methods." (or (and server (listp server) server) @@ -2803,6 +2787,23 @@ that that variable is buffer-local to the summary buffers." (push (cons server result) gnus-server-method-cache) result))) +(defsubst gnus-server-get-method (group method) + ;; Input either a server name, and extended server name, or a + ;; select method, and return a select method. + (cond ((stringp method) + (gnus-server-to-method method)) + ((equal method gnus-select-method) + gnus-select-method) + ((and (stringp (car method)) + group) + (gnus-server-extend-method group method)) + ((and method + (not group) + (equal (cadr method) "")) + method) + (t + (gnus-server-add-address method)))) + (defmacro gnus-method-equal (ss1 ss2) "Say whether two servers are equal." `(let ((s1 ,ss1) diff --git a/lisp/mm-partial.el b/lisp/mm-partial.el index 12fe97b..256ee10 100644 --- a/lisp/mm-partial.el +++ b/lisp/mm-partial.el @@ -1,5 +1,5 @@ ;;; mm-partial.el --- showing message/partial -;; Copyright (C) 2000, 2001 Free Software Foundation, Inc. +;; Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc. ;; Author: Shenghuo Zhu ;; Keywords: message partial @@ -42,7 +42,8 @@ (gnus-request-article-this-buffer (aref header 0) gnus-newsgroup-name) (when (search-forward id nil t) - (let ((nhandles (mm-dissect-buffer)) nid) + (let ((nhandles (mm-dissect-buffer + gnus-article-no-strict-mime)) nid) (if (consp (car nhandles)) (mm-destroy-parts nhandles) (setq nid (cdr (assq 'id diff --git a/lisp/mm-util.el b/lisp/mm-util.el index 7c98056..d2d1b5a 100644 --- a/lisp/mm-util.el +++ b/lisp/mm-util.el @@ -286,7 +286,10 @@ prefer iso-2022-jp to japanese-shift-jis: (defvar mm-use-find-coding-systems-region (fboundp 'find-coding-systems-region) - "Use `find-coding-systems-region' to find proper coding systems.") + "Use `find-coding-systems-region' to find proper coding systems. + +Setting it to nil is useful on Emacsen supporting Unicode if sending +mail with multiple parts is preferred to sending a Unicode one.") ;;; Internal variables: diff --git a/lisp/nnagent.el b/lisp/nnagent.el index 3597e7d..c97a784 100644 --- a/lisp/nnagent.el +++ b/lisp/nnagent.el @@ -167,6 +167,9 @@ t) 'nov))) +(deffoo nnagent-request-expire-articles (articles group &optional server force) + articles) + (deffoo nnagent-request-group (group &optional server dont-check) (nnoo-parent-function 'nnagent 'nnml-request-group (list group (nnagent-server server) dont-check))) @@ -191,10 +194,6 @@ (nnoo-parent-function 'nnagent 'nnml-request-delete-group (list group force (nnagent-server server)))) -(deffoo nnagent-request-expire-articles (articles group &optional server force) - (nnoo-parent-function 'nnagent 'nnml-request-expire-articles - (list articles group (nnagent-server server) force))) - (deffoo nnagent-request-list (&optional server) (nnoo-parent-function 'nnagent 'nnml-request-list (list (nnagent-server server)))) diff --git a/lisp/nnweb.el b/lisp/nnweb.el index 44b25ac..9ae4303 100644 --- a/lisp/nnweb.el +++ b/lisp/nnweb.el @@ -760,9 +760,11 @@ and `altavista'.") (widen) (skip-chars-forward "- \t")) (when (looking-at - "\\([0-9]+[/ ][A-Za-z]+[/ ][0-9]+\\)[ \t]*by[ \t]*\\([^<]*\\) - + + * gnus.texi (Posting Styles): Addition. + 2002-02-05 ShengHuo ZHU * message.texi (Mailing Lists): Addition. @@ -24,6 +28,7 @@ * emacs-mime.texi (Customization): Move emacs-w3m stuff backward; added documentation for `mm-inline-text-html-with-w3m-keymap'. +>>>>>>> 6.280 2002-01-28 ShengHuo ZHU * gnus.texi (Agent Expiry): Addition. diff --git a/texi/gnus-ja.texi b/texi/gnus-ja.texi index e907c9e..6487070 100644 --- a/texi/gnus-ja.texi +++ b/texi/gnus-ja.texi @@ -10334,8 +10334,8 @@ Gnus $B$O30$X=P$F9T$/A4$F$N%a%C%;!<%8$K!"0l$D$+$=$l0J>e$N$=$N%5!<%P!<$N%0(B $B$=$l$>$l$NMM<0$OG$0U$NNL$N(B @dfn{$BB0@-(B} $B$r;}$D;v$,$G$-$^$9!#$=$l$>$l$NB0@-(B $B$O(B @code{(@var{name} @var{value})} $B$NBP$K$h$j@.$jN)$C$F$$$^$9!#B0@-L>(B -$B$O!"(B@code{signature}, @code{signature-file}, @code{address} -(@code{user-mail-address} $B$r>e=q$-$9$k(B), @code{name} +$B$O!"(B@code{signature}, @code{signature-file}, @code{x-face-file}, +@code{address} (@code{user-mail-address} $B$r>e=q$-$9$k(B), @code{name} (@code{user-full-name} $B$r>e=q$-$9$k(B) $B$^$?$O(B @code{body} $B$N$I$l$+$G$"$k;v(B $B$,$G$-$^$9!#B0@-L>$OJ8;zNs$^$?$O%7%s%\%k$G$"$k;v$b$G$-$^$9!#$=$N>l9g$O!"(B $B$3$l$O%X%C%@!$H$7$F;H$o$l!"$=$NCM$,5-;v$N%X%C%@!<$KA^F~$5$l$^$9!#$b$7(B diff --git a/texi/gnus.texi b/texi/gnus.texi index 5033429..0ae64f2 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -10840,13 +10840,14 @@ value, then the style is said to @dfn{match}. Each style may contain an arbitrary amount of @dfn{attributes}. Each attribute consists of a @code{(@var{name} @var{value})} pair. The attribute name can be one of @code{signature}, @code{signature-file}, -@code{address} (overriding @code{user-mail-address}), @code{name} -(overriding @code{(user-full-name)}) or @code{body}. The attribute name -can also be a string or a symbol. In that case, this will be used as a -header name, and the value will be inserted in the headers of the -article; if the value is @code{nil}, the header name will be removed. -If the attribute name is @code{eval}, the form is evaluated, and the -result is thrown away. +@code{x-face-file}, @code{address} (overriding +@code{user-mail-address}), @code{name} (overriding +@code{(user-full-name)}) or @code{body}. The attribute name can also +be a string or a symbol. In that case, this will be used as a header +name, and the value will be inserted in the headers of the article; if +the value is @code{nil}, the header name will be removed. If the +attribute name is @code{eval}, the form is evaluated, and the result +is thrown away. The attribute value can be a string (used verbatim), a function with zero arguments (the return value will be used), a variable (its value -- 1.7.10.4