comparison lisp/gnus/gnus-util.el @ 82975:590114f9753d gnus-5_10-pre-merge-josefsson

2004-08-31 Katsumi Yamaoka <yamaoka@jpl.org> * gnus-agent.el (gnus-agent-restore-gcc): Use ^ and regexp-quote. * gnus-sum.el (gnus-newsgroup-variables): Doc fix (tiny change). From Helmut Waitzmann <Helmut.Waitzmann@web.de>. * gnus-agent.el (gnus-agent-regenerate-group): Activate the group when the group's active is not available. * gnus-art.el (article-hide-headers): Refer to the values for gnus-ignored-headers and gnus-visible-headers in the summary buffer since a user may have set them as group parameters. (gnus-article-next-page): Fix the way to find a real end-of-buffer (tiny change). From YAGI Tatsuya <ynyaaa@ybb.ne.jp>. (gnus-article-read-summary-keys): Restore new window-start and hscroll to summary window. (gnus-prev-page-map): Remove duplicated one. * gnus-cite.el (gnus-cite-ignore-quoted-from): New user option. (gnus-cite-parse): Ignore quoted envelope From_. Suggested by Karl Chen <quarl@nospam.quarl.org> and Reiner Steib <Reiner.Steib@gmx.de>. * gnus-cus.el (gnus-agent-cat-prepare-category-field): Replace pp-to-string with gnus-pp-to-string. * gnus-eform.el (gnus-edit-form): Replace pp with gnus-pp. * gnus-group.el (gnus-group-make-kiboze-group): Replace pp with gnus-pp. * gnus-msg.el (gnus-setup-message): Ignore an article copy while parsing gnus-posting-styles when the message is not for replying. (gnus-summary-resend-message-edit): Call mime-to-mml. Suggested by Hiroshi Fujishima <pooh@nature.tsukuba.ac.jp>. (gnus-debug): Replace pp with gnus-pp. * gnus-score.el (gnus-score-save): Replace pp with gnus-pp. * gnus-spec.el (gnus-update-format): Replace pp-to-string with gnus-pp-to-string. * gnus-sum.el (gnus-read-header): Don't remove a header for the parent article of a sparse article in the thread hashtb. From Stefan Wiens <s.wi@gmx.net>. * gnus-util.el (gnus-bind-print-variables): New macro. (gnus-prin1): Use it. (gnus-prin1-to-string): Use it. (gnus-pp): New function. (gnus-pp-to-string): New function. * gnus.el: Don't make unnecessary *Group* buffer when loading. * mail-source.el (mail-source-touch-pop): Doc fix. * message.el (message-mode): Don't modify paragraph-separate there. (message-setup-fill-variables): Add mml tags to paragraph-start and paragraph-separate. Suggested by Andrew Korty <ajk@iu.edu>. (message-smtpmail-send-it): Doc fix. (message-exchange-point-and-mark): Don't activate region if it was inactive. Suggested by Hiroshi Fujishima <pooh@nature.tsukuba.ac.jp> and Jesper Harder <harder@ifa.au.dk>. * mm-decode.el (mm-save-part): Bind enable-multibyte-characters to t while entering a file name using the mm-with-multibyte macro. Suggested by Hiroshi Fujishima <pooh@nature.tsukuba.ac.jp>. * mm-encode.el (mm-content-transfer-encoding-defaults): Use qp-or-base64 for the application/* types. (mm-safer-encoding): Consider 7bit is safe. * mm-util.el (mm-with-multibyte-buffer): New macro. (mm-with-multibyte): New macro. * mm-view.el (mm-inline-render-with-function): Use multibyte buffer; decode html source by charset. * nndoc.el (nndoc-type-alist): Improve regexp for article-begin, add generate-head-function and generate-article-function to the rfc822-forward entry. (nndoc-forward-type-p): Recognize envelope From_. (nndoc-rfc822-forward-generate-article): New function. (nndoc-rfc822-forward-generate-head): New function. From David Hedbor <dhedbor@real.com>. * nnmail.el (nnmail-split-lowercase-expanded): New user option. (nnmail-expand-newtext): Lowercase expanded entries if nnmail-split-lowercase-expanded is non-nil. * score-mode.el (gnus-score-pretty-print): Replace pp with gnus-pp. * webmail.el (webmail-debug): Replace pp with gnus-pp. * gnus-art.el (gnus-article-wash-html-with-w3m): Bind w3m-safe-url-regexp as the value for mm-w3m-safe-url-regexp; use w3m-minor-mode-map instead of mm-w3m-local-map-property. (gnus-mime-save-part-and-strip): Use mm-complicated-handles instead of mm-multiple-handles. (gnus-mime-delete-part): Ditto. * mm-decode.el (mm-multiple-handles): Recognize a string as a mime handle, as well as a list. (mm-complicated-handles): Former definition of mm-multiple-handles. * mm-view.el (mm-w3m-mode-map): Remove. (mm-w3m-local-map-property): Remove. (mm-w3m-cid-retrieve-1): Call itself recursively. Suggested by ARISAWA Akihiro <ari@mbf.sphere.ne.jp>. (mm-w3m-cid-retrieve): Simplify. (mm-inline-text-html-render-with-w3m): Decode html source by charset; check META tags only when charsets are not specified in headers; specify charset to w3m-region; use w3m-minor-mode-map instead of mm-w3m-local-map-property.
author Reiner Steib <Reiner.Steib@gmx.de>
date Tue, 31 Aug 2004 14:47:59 +0000
parents 0fde48feb604
children
comparison
equal deleted inserted replaced
82974:e88e622cd27a 82975:590114f9753d
1 ;;; gnus-util.el --- utility functions for Gnus 1 ;;; gnus-util.el --- utility functions for Gnus
2 ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 2 ;; Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
3 ;; Free Software Foundation, Inc. 3 ;; Free Software Foundation, Inc.
4 4
5 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org> 5 ;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
6 ;; Keywords: news 6 ;; Keywords: news
7 7
626 (defun gnus-turn-off-edit-menu (type) 626 (defun gnus-turn-off-edit-menu (type)
627 "Turn off edit menu in `gnus-TYPE-mode-map'." 627 "Turn off edit menu in `gnus-TYPE-mode-map'."
628 (define-key (symbol-value (intern (format "gnus-%s-mode-map" type))) 628 (define-key (symbol-value (intern (format "gnus-%s-mode-map" type)))
629 [menu-bar edit] 'undefined)) 629 [menu-bar edit] 'undefined))
630 630
631 (defmacro gnus-bind-print-variables (&rest forms)
632 "Bind print-* variables and evaluate FORMS.
633 This macro is used with `prin1', `pp', etc. in order to ensure printed
634 Lisp objects are loadable. Bind `print-quoted' and `print-readably'
635 to t, and `print-escape-multibyte', `print-escape-newlines',
636 `print-escape-nonascii', `print-length', `print-level' and
637 `print-string-length' to nil."
638 `(let ((print-quoted t)
639 (print-readably t)
640 ;;print-circle
641 ;;print-continuous-numbering
642 print-escape-multibyte
643 print-escape-newlines
644 print-escape-nonascii
645 ;;print-gensym
646 print-length
647 print-level
648 print-string-length)
649 ,@forms))
650
631 (defun gnus-prin1 (form) 651 (defun gnus-prin1 (form)
632 "Use `prin1' on FORM in the current buffer. 652 "Use `prin1' on FORM in the current buffer.
633 Bind `print-quoted' and `print-readably' to t while printing." 653 Bind `print-quoted' and `print-readably' to t, and `print-length' and
634 (let ((print-quoted t) 654 `print-level' to nil. See also `gnus-bind-print-variables'."
635 (print-readably t) 655 (gnus-bind-print-variables (prin1 form (current-buffer))))
636 (print-escape-multibyte nil)
637 print-level print-length)
638 (prin1 form (current-buffer))))
639 656
640 (defun gnus-prin1-to-string (form) 657 (defun gnus-prin1-to-string (form)
641 "The same as `prin1'. 658 "The same as `prin1'.
642 Bind `print-quoted' and `print-readably' to t, and `print-length' 659 Bind `print-quoted' and `print-readably' to t, and `print-length' and
643 and `print-level' to nil." 660 `print-level' to nil. See also `gnus-bind-print-variables'."
644 (let ((print-quoted t) 661 (gnus-bind-print-variables (prin1-to-string form)))
645 (print-readably t) 662
646 (print-length nil) 663 (defun gnus-pp (form)
647 (print-level nil)) 664 "Use `pp' on FORM in the current buffer.
648 (prin1-to-string form))) 665 Bind `print-quoted' and `print-readably' to t, and `print-length' and
666 `print-level' to nil. See also `gnus-bind-print-variables'."
667 (gnus-bind-print-variables (pp form (current-buffer))))
668
669 (defun gnus-pp-to-string (form)
670 "The same as `pp-to-string'.
671 Bind `print-quoted' and `print-readably' to t, and `print-length' and
672 `print-level' to nil. See also `gnus-bind-print-variables'."
673 (gnus-bind-print-variables (pp-to-string form)))
649 674
650 (defun gnus-make-directory (directory) 675 (defun gnus-make-directory (directory)
651 "Make DIRECTORY (and all its parents) if it doesn't exist." 676 "Make DIRECTORY (and all its parents) if it doesn't exist."
652 (require 'nnmail) 677 (require 'nnmail)
653 (let ((file-name-coding-system nnmail-pathname-coding-system)) 678 (let ((file-name-coding-system nnmail-pathname-coding-system))