From c9a326c848f0dcecef01c33349a96b1d1da44163 Mon Sep 17 00:00:00 2001 From: yamaoka Date: Tue, 14 Jan 2003 05:39:02 +0000 Subject: [PATCH] Import Oort Gnus v0.12. --- lisp/ChangeLog | 47 +++++++++++++++++++++++++++++++ lisp/gnus-art.el | 78 +++++++++++++++++++++++++++------------------------ lisp/gnus-cite.el | 13 +++++---- lisp/gnus-fun.el | 1 + lisp/gnus-msg.el | 53 +++++++++++++++++++++++++--------- lisp/gnus-sum.el | 1 + lisp/gnus.el | 2 +- lisp/mail-source.el | 1 - lisp/mm-decode.el | 2 +- lisp/sieve-mode.el | 1 + lisp/sieve.el | 6 ++++ texi/ChangeLog | 4 +++ texi/gnus.texi | 22 +++++++++++++-- 13 files changed, 169 insertions(+), 62 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index e6f6717..4f86b0f 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,50 @@ +2003-01-12 22:02:49 Lars Magne Ingebrigtsen + + * gnus.el: Oort Gnus v0.12 is released. + +2003-01-12 Lars Magne Ingebrigtsen + + * mail-source.el (mail-sources): Removed autoload to make it + compile under XEmacs. + +2003-01-12 Raymond Scholz + + * gnus-msg.el (gnus-confirm-mail-reply-to-news): May be a + regexp or a function too. + (gnus-confirm-treat-mail-like-news): New variable. Ask for + confirmation even if the original article is mail. + +2003-01-12 Lars Magne Ingebrigtsen + + * gnus-msg.el (gnus-inews-add-send-actions): Get the right + articles to be marked when not yanking. + +2003-01-12 Fran,Ag(Bois-David Collin + + * mm-decode.el (mm-get-part): Use mm-with-unibyte-current-buffer. + +2003-01-12 Lars Magne Ingebrigtsen + + * gnus-fun.el (gnus-face-from-file): Autoload. + + * gnus-cite.el (gnus-cite-delete-overlays): Protect against more + errors. + +2003-01-12 Simon Josefsson + + * sieve.el (sieve-upload-and-bury): New. Suggested by + kai.grossjohann@uni-duisburg.de (Kai Gro,A_(Bjohann). + + * sieve-mode.el (sieve-mode-map): Bind s-u-a-b to C-c C-c. + Suggested by kai.grossjohann@uni-duisburg.de (Kai Gro,A_(Bjohann). + +2003-01-12 Lars Magne Ingebrigtsen + + * gnus-art.el (gnus-ignored-headers): Don't include the ^ and : + in every string. + + * gnus.el (gnus-version-number): Bumped version number. + 2003-01-12 13:46:20 Lars Magne Ingebrigtsen * gnus.el: Oort Gnus v0.11 is released. diff --git a/lisp/gnus-art.el b/lisp/gnus-art.el index c71dfe0..9c53e8b 100644 --- a/lisp/gnus-art.el +++ b/lisp/gnus-art.el @@ -106,43 +106,47 @@ :group 'gnus-article) (defcustom gnus-ignored-headers - '("^Path:" "^Expires:" "^Date-Received:" "^References:" "^Xref:" "^Lines:" - "^Relay-Version:" "^Message-ID:" "^Approved:" "^Sender:" "^Received:" - "^X-UIDL:" "^MIME-Version:" "^Return-Path:" "^In-Reply-To:" - "^Content-Type:" "^Content-Transfer-Encoding:" "^X-WebTV-Signature:" - "^X-MimeOLE:" "^X-MSMail-Priority:" "^X-Priority:" "^X-Loop:" - "^X-Authentication-Warning:" "^X-MIME-Autoconverted:" "^X-Face" - "^X-Attribution:" "^X-Originating-IP:" "^Delivered-To:" - "^NNTP-[-A-Za-z]+:" "^Distribution:" "^X-no-archive:" "^X-Trace:" - "^X-Complaints-To:" "^X-NNTP-Posting-Host:" "^X-Orig.*:" - "^Abuse-Reports-To:" "^Cache-Post-Path:" "^X-Article-Creation-Date:" - "^X-Poster:" "^X-Mail2News-Path:" "^X-Server-Date:" "^X-Cache:" - "^Originator:" "^X-Problems-To:" "^X-Auth-User:" "^X-Post-Time:" - "^X-Admin:" "^X-UID:" "^Resent-[-A-Za-z]+:" "^X-Mailing-List:" - "^Precedence:" "^Original-[-A-Za-z]+:" "^X-filename:" "^X-Orcpt:" - "^Old-Received:" "^X-Pgp" "^X-Auth:" "^X-From-Line:" - "^X-Gnus-Article-Number:" "^X-Majordomo:" "^X-Url:" "^X-Sender:" - "^MBOX-Line" "^Priority:" "^X400-[-A-Za-z]+:" - "^Status:" "^X-Gnus-Mail-Source:" "^Cancel-Lock:" - "^X-FTN" "^X-EXP32-SerialNo:" "^Encoding:" "^Importance:" - "^Autoforwarded:" "^Original-Encoded-Information-Types:" "^X-Ya-Pop3:" - "^X-Face-Version:" "^X-Vms-To:" "^X-ML-NAME:" "^X-ML-COUNT:" - "^Mailing-List:" "^X-finfo:" "^X-md5sum:" "^X-md5sum-Origin:" - "^X-Sun-Charset:" "^X-Accept-Language:" "^X-Envelope-Sender:" - "^List-[A-Za-z]+:" "^X-Listprocessor-Version:" - "^X-Received:" "^X-Distribute:" "^X-Sequence:" "^X-Juno-Line-Breaks:" - "^X-Notes-Item:" "^X-MS-TNEF-Correlator:" "^x-uunet-gateway:" - "^X-Received:" "^Content-length:" "X-precedence:" - "^X-Authenticated-User:" "^X-Comment" "^X-Report:" "^X-Abuse-Info:" - "^X-HTTP-Proxy:" "^X-Mydeja-Info:" "^X-Copyright" "^X-No-Markup:" - "^X-Abuse-Info:" "^X-From_:" "^X-Accept-Language:" "^Errors-To:" - "^X-BeenThere:" "^X-Mailman-Version:" "^List-Help:" "^List-Post:" - "^List-Subscribe:" "^List-Id:" "^List-Unsubscribe:" "^List-Archive:" - "^X-Content-length:" "^X-Posting-Agent:" "^Original-Received:" - "^X-Request-PGP:" "^X-Fingerprint:" "^X-WRIEnvto:" "^X-WRIEnvfrom:" - "^X-Virus-Scanned:" "^X-Delivery-Agent:" "^Posted-Date:" "^X-Gateway:" - "^X-Local-Origin:" "^X-Local-Destination:" "^X-UserInfo1:" - "^X-Received-Date:" "^X-Hashcash:" "^Face:") + (mapcar + (lambda (header) + (concat "^" header ":")) + '("Path" "Expires" "Date-Received" "References" "Xref" "Lines" + "Relay-Version" "Message-ID" "Approved" "Sender" "Received" + "X-UIDL" "MIME-Version" "Return-Path" "In-Reply-To" + "Content-Type" "Content-Transfer-Encoding" "X-WebTV-Signature" + "X-MimeOLE" "X-MSMail-Priority" "X-Priority" "X-Loop" + "X-Authentication-Warning" "X-MIME-Autoconverted" "X-Face" + "X-Attribution" "X-Originating-IP" "Delivered-To" + "NNTP-[-A-Za-z]+" "Distribution" "X-no-archive" "X-Trace" + "X-Complaints-To" "X-NNTP-Posting-Host" "X-Orig.*" + "Abuse-Reports-To" "Cache-Post-Path" "X-Article-Creation-Date" + "X-Poster" "X-Mail2News-Path" "X-Server-Date" "X-Cache" + "Originator" "X-Problems-To" "X-Auth-User" "X-Post-Time" + "X-Admin" "X-UID" "Resent-[-A-Za-z]+" "X-Mailing-List" + "Precedence" "Original-[-A-Za-z]+" "X-filename" "X-Orcpt" + "Old-Received" "X-Pgp" "X-Auth" "X-From-Line" + "X-Gnus-Article-Number" "X-Majordomo" "X-Url" "X-Sender" + "MBOX-Line" "Priority" "X400-[-A-Za-z]+" + "Status" "X-Gnus-Mail-Source" "Cancel-Lock" + "X-FTN" "X-EXP32-SerialNo" "Encoding" "Importance" + "Autoforwarded" "Original-Encoded-Information-Types" "X-Ya-Pop3" + "X-Face-Version" "X-Vms-To" "X-ML-NAME" "X-ML-COUNT" + "Mailing-List" "X-finfo" "X-md5sum" "X-md5sum-Origin" + "X-Sun-Charset" "X-Accept-Language" "X-Envelope-Sender" + "List-[A-Za-z]+" "X-Listprocessor-Version" + "X-Received" "X-Distribute" "X-Sequence" "X-Juno-Line-Breaks" + "X-Notes-Item" "X-MS-TNEF-Correlator" "x-uunet-gateway" + "X-Received" "Content-length" "X-precedence" + "X-Authenticated-User" "X-Comment" "X-Report" "X-Abuse-Info" + "X-HTTP-Proxy" "X-Mydeja-Info" "X-Copyright" "X-No-Markup" + "X-Abuse-Info" "X-From_" "X-Accept-Language" "Errors-To" + "X-BeenThere" "X-Mailman-Version" "List-Help" "List-Post" + "List-Subscribe" "List-Id" "List-Unsubscribe" "List-Archive" + "X-Content-length" "X-Posting-Agent" "Original-Received" + "X-Request-PGP" "X-Fingerprint" "X-WRIEnvto" "X-WRIEnvfrom" + "X-Virus-Scanned" "X-Delivery-Agent" "Posted-Date" "X-Gateway" + "X-Local-Origin" "X-Local-Destination" "X-UserInfo1" + "X-Received-Date" "X-Hashcash" "Face" "X-DMCA-Notifications" + "X-Abuse-and-DMCA-Info" "X-Postfilter")) "*All headers that start with this regexp will be hidden. This variable can also be a list of regexps of headers to be ignored. If `gnus-visible-headers' is non-nil, this variable will be ignored." diff --git a/lisp/gnus-cite.el b/lisp/gnus-cite.el index a5ab854..529535c 100644 --- a/lisp/gnus-cite.el +++ b/lisp/gnus-cite.el @@ -667,12 +667,13 @@ See also the documentation for `gnus-article-highlight-citation'." (defun gnus-cite-delete-overlays () (dolist (overlay gnus-cite-overlay-list) - (when (or (not (gnus-overlay-end overlay)) - (and (>= (gnus-overlay-end overlay) (point-min)) - (<= (gnus-overlay-end overlay) (point-max)))) - (setq gnus-cite-overlay-list (delete overlay gnus-cite-overlay-list)) - (ignore-errors - (gnus-delete-overlay overlay))))) + (ignore-errors + (when (or (not (gnus-overlay-end overlay)) + (and (>= (gnus-overlay-end overlay) (point-min)) + (<= (gnus-overlay-end overlay) (point-max)))) + (setq gnus-cite-overlay-list (delete overlay gnus-cite-overlay-list)) + (ignore-errors + (gnus-delete-overlay overlay)))))) (defun gnus-cite-parse-wrapper () ;; Wrap chopped gnus-cite-parse. diff --git a/lisp/gnus-fun.el b/lisp/gnus-fun.el index aa711da..5e9d79a 100644 --- a/lisp/gnus-fun.el +++ b/lisp/gnus-fun.el @@ -79,6 +79,7 @@ Output to the current buffer, replace text, and don't mingle error." (format gnus-convert-image-to-x-face-command (shell-quote-argument file))))) +;;;###autoload (defun gnus-face-from-file (file) "Return an Face header based on an image file." (interactive "fImage file name:" ) diff --git a/lisp/gnus-msg.el b/lisp/gnus-msg.el index eca83e5..5aebc44 100644 --- a/lisp/gnus-msg.el +++ b/lisp/gnus-msg.el @@ -256,7 +256,23 @@ See also the `mml-default-encrypt-method' variable." (defcustom gnus-confirm-mail-reply-to-news nil "If non-nil, Gnus requests confirmation when replying to news. This is done because new users often reply by mistake when reading -news." +news. +This can also be a function receiving the group name as the only +parameter which should return non-nil iff a confirmation is needed, or +a regexp, in which case a confirmation is asked for iff the group name +matches the regexp." + :group 'gnus-message + :type '(choice (const :tag "No" nil) + (const :tag "Yes" t) + (regexp :tag "Iff group matches regexp") + (function :tag "Iff function evaluates to non-nil"))) + +(defcustom gnus-confirm-treat-mail-like-news + nil + "If non-nil, Gnus will treat mail like news with regard to confirmation +when replying by mail. See the `gnus-confirm-mail-reply-to-news' variable +for fine-tuning this. +If nil, Gnus will never ask for confirmation if replying to mail." :group 'gnus-message :type 'boolean) @@ -500,15 +516,19 @@ Gcc: header for archiving purposes." (setq message-newsreader (setq message-mailer (gnus-extended-version))) (message-add-action `(set-window-configuration ,winconf) 'exit 'postpone 'kill) - (message-add-action - `(when (gnus-buffer-exists-p ,buffer) - (save-excursion - (set-buffer ,buffer) - ,(when article - (if (eq config 'forward) - `(gnus-summary-mark-article-as-forwarded ',yanked) - `(gnus-summary-mark-article-as-replied ',yanked))))) - 'send)) + (let ((to-be-marked (cond + (yanked yanked) + (article (list article)) + (t nil)))) + (message-add-action + `(when (gnus-buffer-exists-p ,buffer) + (save-excursion + (set-buffer ,buffer) + ,(when to-be-marked + (if (eq config 'forward) + `(gnus-summary-mark-article-as-forwarded ',to-be-marked) + `(gnus-summary-mark-article-as-replied ',to-be-marked))))) + 'send))) (put 'gnus-setup-message 'lisp-indent-function 1) (put 'gnus-setup-message 'edebug-form-spec '(form body)) @@ -1038,9 +1058,16 @@ If VERY-WIDE, make a very wide reply." (list (and current-prefix-arg (gnus-summary-work-articles 1)))) ;; Allow user to require confirmation before replying by mail to the - ;; author of a news article. - (when (or (not (gnus-news-group-p gnus-newsgroup-name)) - (not gnus-confirm-mail-reply-to-news) + ;; author of a news article (or mail message). + (when (or + (not (or (gnus-news-group-p gnus-newsgroup-name) + gnus-confirm-treat-mail-like-news)) + (not (cond ((stringp gnus-confirm-mail-reply-to-news) + (string-match gnus-confirm-mail-reply-to-news + gnus-newsgroup-name)) + ((functionp gnus-confirm-mail-reply-to-news) + (funcall gnus-confirm-mail-reply-to-news gnus-newsgroup-name)) + (t gnus-confirm-mail-reply-to-news))) (y-or-n-p "Really reply by mail to article author? ")) (let* ((article (if (listp (car yank)) diff --git a/lisp/gnus-sum.el b/lisp/gnus-sum.el index 442fd00..9ccfe4f 100644 --- a/lisp/gnus-sum.el +++ b/lisp/gnus-sum.el @@ -1831,6 +1831,7 @@ increase the score of each group you read." (gnus-define-keys (gnus-summary-wash-display-map "D" gnus-summary-wash-map) "x" gnus-article-display-x-face + "d" gnus-article-display-face "s" gnus-treat-smiley "D" gnus-article-remove-images "f" gnus-treat-from-picon diff --git a/lisp/gnus.el b/lisp/gnus.el index 86a00a9..6d2225c 100644 --- a/lisp/gnus.el +++ b/lisp/gnus.el @@ -282,7 +282,7 @@ is restarted, and sometimes reloaded." :link '(custom-manual "(gnus)Exiting Gnus") :group 'gnus) -(defconst gnus-version-number "0.11" +(defconst gnus-version-number "0.12" "Version number for this version of Gnus.") (defconst gnus-version (format "Oort Gnus v%s" gnus-version-number) diff --git a/lisp/mail-source.el b/lisp/mail-source.el index bf9d624..e841449 100644 --- a/lisp/mail-source.el +++ b/lisp/mail-source.el @@ -55,7 +55,6 @@ (list 'const (car a))) imap-stream-alist))) -;;;###autoload (defcustom mail-sources nil "*Where the mail backends will look for incoming mail. This variable is a list of mail source specifiers. diff --git a/lisp/mm-decode.el b/lisp/mm-decode.el index 6a6d4c8..977bb8a 100644 --- a/lisp/mm-decode.el +++ b/lisp/mm-decode.el @@ -954,7 +954,7 @@ external if displayed external." "Return the contents of HANDLE as a string." (mm-with-unibyte-buffer (insert (with-current-buffer (mm-handle-buffer handle) - (mm-with-unibyte-current-buffer-mule4 + (mm-with-unibyte-current-buffer (buffer-string)))) (mm-decode-content-transfer-encoding (mm-handle-encoding handle) diff --git a/lisp/sieve-mode.el b/lisp/sieve-mode.el index d86ea87..944b189 100644 --- a/lisp/sieve-mode.el +++ b/lisp/sieve-mode.el @@ -159,6 +159,7 @@ (defvar sieve-mode-map (let ((map (make-sparse-keymap))) (define-key map "\C-c\C-l" 'sieve-upload) + (define-key map "\C-c\C-c" 'sieve-upload-and-bury) (define-key map "\C-c\C-m" 'sieve-manage) map) "Key map used in sieve mode.") diff --git a/lisp/sieve.el b/lisp/sieve.el index f41fa7c..edfd385 100644 --- a/lisp/sieve.el +++ b/lisp/sieve.el @@ -371,6 +371,12 @@ Server : " server ":" (or port "2000") " (message (concat "Sieve upload done. Use `C-c RET' to manage scripts.")) (message "Sieve upload failed: %s" (nth 2 err))))))) +;;;###autoload +(defun sieve-upload-and-bury (&optional name) + (interactive) + (sieve-upload name) + (bury-buffer)) + (provide 'sieve) ;; sieve.el ends here diff --git a/texi/ChangeLog b/texi/ChangeLog index a96296f..4aeb90d 100644 --- a/texi/ChangeLog +++ b/texi/ChangeLog @@ -1,3 +1,7 @@ +2003-01-12 Lars Magne Ingebrigtsen + + * gnus.texi (Article Display): Addition. + 2003-01-11 Lars Magne Ingebrigtsen * message.texi (Header Commands): Addition. diff --git a/texi/gnus.texi b/texi/gnus.texi index f7fed78..6f5a309 100644 --- a/texi/gnus.texi +++ b/texi/gnus.texi @@ -33,7 +33,7 @@ \makeindex \begin{document} -\newcommand{\gnusversionname}{Oort Gnus v0.11} +\newcommand{\gnusversionname}{Oort Gnus v0.12} \newcommand{\gnuschaptername}{} \newcommand{\gnussectionname}{} @@ -385,7 +385,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 Oort Gnus v0.11. +This manual corresponds to Oort Gnus v0.12. @end ifinfo @@ -8746,6 +8746,12 @@ they'll be removed. Display an @code{X-Face} in the @code{From} header. (@code{gnus-article-display-x-face}). +@item W D d +@kindex W D d (Summary) +@findex gnus-article-display-face +Display a @code{Face} in the @code{From} header. +(@code{gnus-article-display-face}). + @item W D s @kindex W D s (Summary) @findex gnus-treat-smiley @@ -10990,10 +10996,20 @@ that have none when you do a @kbd{a}. @item gnus-confirm-mail-reply-to-news @vindex gnus-confirm-mail-reply-to-news -If non-@code{nil}, Gnus requests confirmation when replying to news. +This can also be a function receiving the group name as the only +parameter which should return non-@code{nil} if a confirmation is +needed, or a regular expression matching group names, where +confirmation is should be asked for. + If you find yourself never wanting to reply to mail, but occasionally press R anyway, this variable might be for you. +@item gnus-confirm-treat-mail-like-news +@vindex gnus-confirm-treat-mail-like-news +If non-@code{nil}, Gnus also requests confirmation according to +@code{gnus-confirm-mail-reply-to-news} when replying to mail. This is +useful for treating mailing lists like newsgroups. + @end table -- 1.7.10.4