+2003-06-23 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * spam.el (spam-from-listed-p, spam-parse-list): use
+ ietf-drums-parse-addresses to extract the address portion of the
+ whitelist/blacklist file if it looks like an address can be found
+
+2003-06-23 Didier Verna <didier@xemacs.org>
+
+ * gnus-ems.el (gnus-put-image): New argument CATEGORY. Add it as a
+ text property.
+ (gnus-remove-image): New argument CATEGORY. Only remove if
+ category matches.
+ * gnus-xmas.el (gnus-xmas-put-image):
+ (gnus-xmas-remove-image): Ditto, with extents.
+ * gnus-art.el (gnus-delete-images): Pass CATEGORY argument to
+ gnus-[xmas-]remove-image.
+ (article-display-face): Don't always act as a toggle. Call
+ `gnus-put-image' with CATEGORY argument.
+ (article-display-x-face): Call `gnus-put-image' with CATEGORY
+ argument.
+ * smiley.el (smiley-region): Ditto.
+ * gnus-fun.el (gnus-display-x-face-in-from): Ditto.
+ * gnus-picon.el (gnus-picon-insert-glyph): Ditto.
+ (gnus-treat-mail-picon): Don't always act as a toggle.
+ * gnus-picon.el (gnus-treat-newsgroups-picon): Ditto.
+
+2003-06-23 Didier Verna <didier@xemacs.org>
+
+ * gnus-art.el (article-display-face): Check for existence of the
+ original article buffer before switching to it.
+
2003-06-20 Jesper Harder <harder@ifa.au.dk>
* mm-util.el (mm-append-to-file): Say "Appended to". Suggested by
is requested but the message is not spam
2003-06-09 Teodor Zlatanov <tzz@lifelogs.com>
- From Eric
+ From Eric
<knauel@informatik.uni-tuebingen.de>
* spam.el (spam-use-spamoracle): new variable
for activation of spam-install-hooks
(spam-spamoracle): new variable customization group
(spam-spamoracle, spam-spamoracle): new variables
- (spam-group-spam-processor-spamoracle-p)
+ (spam-group-spam-processor-spamoracle-p)
(spam-group-ham-processor-spamoracle-p): new functions
(spam-summary-prepare-exit): added spamoracle ham/spam exit processing
(spam-list-of-checks, spam-list-of-statistical-checks): add
spam-use-spamoracle
- (spam-check-spamoracle, spam-spamoracle-learn)
+ (spam-check-spamoracle, spam-spamoracle-learn)
(spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): new functions
* gnus.el (gnus-group-spam-exit-processor-spamoracle)
2003-06-04 Lars Magne Ingebrigtsen <larsi@gnus.org>
* rfc2047.el (rfc2047-encode-region): Don't error out on invalid
- strings.
+ strings.
2003-06-04 Jesper Harder <harder@ifa.au.dk>
2003-05-28 Teodor Zlatanov <tzz@lifelogs.com>
* gnus-registry.el (gnus-registry-dirty): flag for modified registry
- (gnus-registry-save, gnus-registry-read)
+ (gnus-registry-save, gnus-registry-read)
(gnus-registry-store-extra, gnus-registry-clear): use it (note
that gnus-registry-store-extra is invoked for all modifications to
set the mtime, so gnus-registry-dirty only needs to be set there)
* gnus-agent.el (gnus-agentize): Updated documentation to match
usage.
(gnus-agent-expire-group-1): Do not skip over a group when the
- force argument is set.
+ force argument is set.
* gnus.el (gnus-agent): Updated documentation to reflect that
gnus-agent now defaults to t.
2003-05-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * mail-source.el (mail-source-delete-incoming): Changed to t.
+ * mail-source.el (mail-source-delete-incoming): Changed to t.
* rfc2047.el (rfc2047-syntax-table): Funcall.
- * lpath.el ((featurep 'xemacs)): Added set-char-table-range.
+ * lpath.el ((featurep 'xemacs)): Added set-char-table-range.
((featurep 'xemacs)): No, don't.
- * rfc2047.el (rfc2047-encodable-p): Use the header charset.
+ * rfc2047.el (rfc2047-encodable-p): Use the header charset.
* gnus-sum.el (gnus-summary-reselect-current-group): Supply
- leave-hidden.
+ leave-hidden.
2003-05-14 Jonathan Kamens <jik@kamens.brookline.ma.us>
* gnus-sum.el (gnus-summary-exit): Added `leave-hidden'. (Tiny
- patch.)
+ patch.)
2003-05-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-registry.el (gnus-registry-store-extra-entry): Use
- gnus-assq-delete-all.
+ gnus-assq-delete-all.
* gnus-xmas.el (gnus-xmas-assq-delete-all): New function.
- * message.el (message-ignored-bounced-headers): Add Delivered-To.
+ * message.el (message-ignored-bounced-headers): Add Delivered-To.
* gnus-sum.el (gnus-summary-find-next): Indent.
(gnus-summary-find-prev): Ditto.
* gnus-util.el (gnus-user-date): Use %d instead of %m.
(gnus-user-date): Use floating point time so that we don't get
- overflows.
+ overflows.
* gnus-sum.el (gnus-summary-local-variables): Clean up.
2003-05-12 Teodor Zlatanov <tzz@lifelogs.com>
* gnus-registry.el (gnus-registry-install): new variable
- (gnus-registry-fetch-extra, gnus-registry-fetch-extra-entry)
- (gnus-registry-store-extra-entry, gnus-registry-delete-group)
+ (gnus-registry-fetch-extra, gnus-registry-fetch-extra-entry)
+ (gnus-registry-store-extra-entry, gnus-registry-delete-group)
(gnus-registry-add-group): add a modification timestamp to each entry
(gnus-registry-install-hooks): new function
references to each field's symbol.
gnus-sum.el (gnus-summary-use-undownloaded-faces): New local variable.
(gnus-select-newgroup): Initialize it.
- (gnus-summary-highlight-line): Use it.
+ (gnus-summary-highlight-line): Use it.
2003-05-12 Dave Love <fx@gnu.org>
* mm-util.el (mm-read-charset): Deleted.
(mm-coding-system-mime-charset): New.
- (mm-read-coding-system, mm-mule-charset-to-mime-charset)
- (mm-charset-to-coding-system, mm-mime-charset)
+ (mm-read-coding-system, mm-mule-charset-to-mime-charset)
+ (mm-charset-to-coding-system, mm-mime-charset)
(mm-find-mime-charset-region): Use it.
(mm-default-multibyte-p): Fix non-mule case.
2003-05-11 Lars Magne Ingebrigtsen <larsi@gnus.org>
* gnus-agent.el (gnus-agent-expire-unagentized-dirs): Added
- space.
+ space.
2003-05-11 Jesper Harder <harder@ifa.au.dk>
* message.el (message-setup-1): Setup alternative email before
generate-headers.
-
+
(message-forward-subject-name-subject): Fix the case when the
field "from" doesn't exist.
* gnus.el (gnus-install-group-spam-parameters): docstring fix.
From Jon Ericson <Jon.Ericson@jpl.nasa.gov> (tiny change)
- * gnus-registry.el (gnus-registry-fetch-extra)
+ * gnus-registry.el (gnus-registry-fetch-extra)
(gnus-registry-store-extra, gnus-registry-group-count): new functions
- (gnus-registry-fetch-group, gnus-registry-delete-group)
+ (gnus-registry-fetch-group, gnus-registry-delete-group)
(gnus-registry-add-group): changed to work with extra data element
if present
2003-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * spam-stat.el (spam-stat-test-directory): Compare against zero.
+ * spam-stat.el (spam-stat-test-directory): Compare against zero.
2003-05-01 Trey Jackson <tjackson@ichips.intel.com> (tiny change)
* spam-stat.el (spam-stat-test-directory): Skip 0 length files.
-
+
2003-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
* message.el (message-forward-subject-name-subject): Decode
2003-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
* message.el (message-check-news-header-syntax): Alter "posting"
- message.
+ message.
* nnrss.el (nnrss-node-text): Don't use char classes.
(gnus-registry-add-group): new function
(gnus-register-spool-action): use it
(gnus-register-action): use it
- (gnus-registry-translate-from-alist)
+ (gnus-registry-translate-from-alist)
(gnus-registry-translate-to-alist): remove the headers registry
for now
2003-04-27 Reiner Steib <Reiner.Steib@gmx.de>
- * gnus-art.el (gnus-mime-display-multipart-as-mixed)
- (gnus-mime-display-multipart-alternative-as-mixed)
+ * gnus-art.el (gnus-mime-display-multipart-as-mixed)
+ (gnus-mime-display-multipart-alternative-as-mixed)
(gnus-mime-display-multipart-related-as-mixed): Added doc-strings,
allow customization.
2003-04-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-sum.el (gnus-summary-catchup): Don't mark ticked messages.
+ * gnus-sum.el (gnus-summary-catchup): Don't mark ticked messages.
(gnus-summary-mark-read-and-unread-as-read): Take an optional
mark.
* gnus-sum.el (gnus-summary-catchup-from-here): Doc fix.
* nnrss.el (nnrss-node-text): Use only one
- gnus-replace-in-string.
+ gnus-replace-in-string.
* gnus.el: Remove gnus-functionp throughout.
* gnus-util.el (gnus-functionp): Removed.
- * gnus-msg.el (gnus-summary-wide-reply-with-original): Doc fix.
+ * gnus-msg.el (gnus-summary-wide-reply-with-original): Doc fix.
* message.el (message-required-headers): Add In-Reply-To.
systems property.
* mml-sec.el (mml2015, mml1991): Don't require.
- (mml2015-sign, mml2015-encrypt, mml1991-sign, mml1991-encrypt)
+ (mml2015-sign, mml2015-encrypt, mml1991-sign, mml1991-encrypt)
(message-goto-body, mml-insert-tag): Autoload.
* mm-decode.el (mm-tmp-directory): Re-write to help avoid warnings.
2003-04-24 Reiner Steib <Reiner.Steib@gmx.de>
- * gnus-group.el (gnus-large-ephemeral-newsgroup)
+ * gnus-group.el (gnus-large-ephemeral-newsgroup)
(gnus-fetch-old-ephemeral-headers): News variables.
(gnus-group-read-ephemeral-group): Use them.
* message.el (message-hide-headers): Don't do intangible.
* gnus.el (gnus-group-prefixed-name): Comment out the test for
- colon.
+ colon.
* gnus-srvr.el (gnus-browse-read-group): Don't give the real name
to the ephemeral entry, but the prefixed name.
2003-04-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * gnus-draft.el (gnus-draft-send): Add message-hidden-headers.
+ * gnus-draft.el (gnus-draft-send): Add message-hidden-headers.
2003-04-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
* message.el (message-newline-and-reformat): Place a boundary
before filling.
(message-make-forward-subject-function): Changed default to
- message-forward-subject-name-subject.
+ message-forward-subject-name-subject.
(message-forward-subject-name-subject): New function.
* nnimap.el (nnimap-split-fancy): Ditto.
(message-fix-before-sending): Make hidden headers visible.
(message-hide-headers): Bind after-change-functions to nil.
(message-forbidden-properties): Put invisible and intangible
- back.
+ back.
(message-strip-forbidden-properties): Ignore message-hidden text.
* gnus-msg.el: Hide headers.
(message-hide-header-p): New function.
(message-hide-header-p): Change logic.
(message-forbidden-properties): Remove intangible nil invisible
- nil.
+ nil.
(message-hide-headers): Narrow to headers.
* lpath.el (featurep): Bind Info-directory, Info-menu.
(pgg-pgp5-snarf-keys-region, pgg-pgp5-process-region): do.
* pgg.el (pgg-make-temp-file, pgg-temporary-file-directory): do.
-
+
2003-04-05 Teodor Zlatanov <tzz@lifelogs.com>
* spam.el (spam-split): (save-excursion) around (widen)
nnheader-accept-process-output.
(pop3-retr): Ditto.
- * mm-view.el (mm-text-html-renderer-alist): Add -nolist to Lynx.
+ * mm-view.el (mm-text-html-renderer-alist): Add -nolist to Lynx.
(mm-text-html-washer-alist): Ditto.
2003-03-31 Simon Josefsson <jas@extundo.com>
2003-03-30 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * nndoc.el (nndoc-type-alist): Move mime-parts further ahead.
+ * nndoc.el (nndoc-type-alist): Move mime-parts further ahead.
* gnus-registry.el (gnus-registry-translate-to-alist): Make a
valid lambda.
:type 'sexp
:group 'gnus-article-hiding)
-;; Fixme: This isn't the right thing for mixed graphical and
-;; non-graphical frames in a session.
+;; Fixme: This isn't the right thing for mixed graphical and non-graphical
+;; frames in a session.
(defcustom gnus-article-x-face-command
(cond
(noninteractive
(defun article-display-face ()
"Display any Face headers in the header."
(interactive)
- (gnus-with-article-headers
- (if (memq 'face gnus-article-wash-types)
- (gnus-delete-images 'face)
- (let (face faces)
- (save-excursion
- (set-buffer gnus-original-article-buffer)
- (save-restriction
- (mail-narrow-to-head)
- (while (gnus-article-goto-header "Face")
- (push (mail-header-field-value) faces))))
- (while (setq face (pop faces))
- (let ((png (gnus-convert-face-to-png face))
- image)
- (when png
- (setq image (gnus-create-image png 'png t))
- (gnus-article-goto-header "from")
- (when (bobp)
- (insert "From: [no `from' set]\n")
- (forward-char -17))
- (gnus-add-wash-type 'face)
- (gnus-add-image 'face image)
- (gnus-put-image image))))))
- ))
+ (let ((wash-face-p buffer-read-only))
+ (gnus-with-article-headers
+ ;; When displaying parts, this function can be called several times on
+ ;; the same article, without any intended toggle semantic (as typing `W
+ ;; D d' would have). So face deletion must occur only when we come from
+ ;; an interactive command, that is when the *Article* buffer is
+ ;; read-only.
+ (if (and wash-face-p (memq 'face gnus-article-wash-types))
+ (gnus-delete-images 'face)
+ (let (face faces)
+ (save-excursion
+ (when (and wash-face-p
+ (progn
+ (goto-char (point-min))
+ (not (re-search-forward "^Face:[\t ]*" nil t)))
+ (gnus-buffer-live-p gnus-original-article-buffer))
+ (set-buffer gnus-original-article-buffer))
+ (save-restriction
+ (mail-narrow-to-head)
+ (while (gnus-article-goto-header "Face")
+ (push (mail-header-field-value) faces))))
+ (while (setq face (pop faces))
+ (let ((png (gnus-convert-face-to-png face))
+ image)
+ (when png
+ (setq image (gnus-create-image png 'png t))
+ (gnus-article-goto-header "from")
+ (when (bobp)
+ (insert "From: [no `from' set]\n")
+ (forward-char -17))
+ (gnus-add-wash-type 'face)
+ (gnus-add-image 'face image)
+ (gnus-put-image image nil 'face))))))
+ )))
(defun article-display-x-face (&optional force)
"Look for an X-Face header and display it if present."
;; Delete the old process, if any.
(when (process-status "article-x-face")
(delete-process "article-x-face"))
- (if (memq 'xface gnus-article-wash-types)
+ ;; See the comment in `article-display-face'.
+ (if (and wash-face-p (memq 'xface gnus-article-wash-types))
;; We have already displayed X-Faces, so we remove them
;; instead.
(gnus-delete-images 'xface)
"Delete all images in CATEGORY."
(let ((entry (assq category gnus-article-image-alist)))
(dolist (image (cdr entry))
- (gnus-remove-image image))
+ (gnus-remove-image image category))
(setq gnus-article-image-alist (delq entry gnus-article-image-alist))
(gnus-delete-wash-type category)))
(insert glyph)
(gnus-add-wash-type category)
(gnus-add-image category (car glyph))
- (gnus-put-image (car glyph) (cdr glyph))))
+ (gnus-put-image (car glyph) (cdr glyph) category)))
(defun gnus-picon-create-glyph (file)
(or (cdr (assoc file gnus-picon-glyph-alist))
;;; Commands:
+;; #### NOTE: the test for buffer-read-only is the same as in
+;; article-display-[x-]face. See the comment up there.
+
;;;###autoload
(defun gnus-treat-from-picon ()
"Display picons in the From header.
If picons are already displayed, remove them."
(interactive)
- (gnus-with-article-buffer
- (if (memq 'from-picon gnus-article-wash-types)
- (gnus-delete-images 'from-picon)
- (gnus-picon-transform-address "from" 'from-picon))))
+ (let ((wash-picon-p buffer-read-only))
+ (gnus-with-article-buffer
+ (if (and wash-picon-p (memq 'from-picon gnus-article-wash-types))
+ (gnus-delete-images 'from-picon)
+ (gnus-picon-transform-address "from" 'from-picon)))
+ ))
;;;###autoload
(defun gnus-treat-mail-picon ()
"Display picons in the Cc and To headers.
If picons are already displayed, remove them."
(interactive)
- (gnus-with-article-buffer
- (if (memq 'mail-picon gnus-article-wash-types)
- (gnus-delete-images 'mail-picon)
- (gnus-picon-transform-address "cc" 'mail-picon)
- (gnus-picon-transform-address "to" 'mail-picon))))
+ (let ((wash-picon-p buffer-read-only))
+ (gnus-with-article-buffer
+ (if (and wash-picon-p (memq 'mail-picon gnus-article-wash-types))
+ (gnus-delete-images 'mail-picon)
+ (gnus-picon-transform-address "cc" 'mail-picon)
+ (gnus-picon-transform-address "to" 'mail-picon)))
+ ))
;;;###autoload
(defun gnus-treat-newsgroups-picon ()
"Display picons in the Newsgroups and Followup-To headers.
If picons are already displayed, remove them."
(interactive)
- (gnus-with-article-buffer
- (if (memq 'newsgroups-picon gnus-article-wash-types)
- (gnus-delete-images 'newsgroups-picon)
- (gnus-picon-transform-newsgroups "newsgroups")
- (gnus-picon-transform-newsgroups "followup-to"))))
+ (let ((wash-picon-p buffer-read-only))
+ (gnus-with-article-buffer
+ (if (and wash-picon-p (memq 'newsgroups-picon gnus-article-wash-types))
+ (gnus-delete-images 'newsgroups-picon)
+ (gnus-picon-transform-newsgroups "newsgroups")
+ (gnus-picon-transform-newsgroups "followup-to")))
+ ))
(provide 'gnus-picon)