;;; ;;; $Id: tm-gnus4.el,v 5.0 1994/09/25 21:27:13 morioka Exp $ ;;; (provide 'tm-gnus4) (require 'tm-gnus) (autoload 'mime/viewer-mode "tm-view" "View MIME message." t) (if (and (null gnus-startup-hook) (boundp 'gnus-Startup-hook)) (setq gnus-startup-hook gnus-Startup-hook) ) (if (and (null gnus-select-group-hook) (boundp 'gnus-Select-group-hook)) (setq gnus-select-group-hook gnus-Select-group-hook) ) (if (and (null gnus-summary-mode-hook) (boundp 'gnus-Subject-mode-hook)) (setq gnus-summary-mode-hook gnus-Subject-mode-hook) ) (if (and (null gnus-article-mode-hook) (boundp 'gnus-Article-mode-hook)) (setq gnus-article-mode-hook gnus-Article-mode-hook) ) (if (and (null gnus-article-prepare-hook) (boundp 'gnus-Article-prepare-hook)) (setq gnus-article-prepare-hook gnus-Article-prepare-hook) ) (defun tm-gnus/view-message (arg) "MIME decode and play this message." (interactive "P") (let ((gnus-break-pages nil)) (gnus-summary-select-article t t) ) (pop-to-buffer gnus-article-buffer t) (mime/viewer-mode) ) (add-hook 'gnus-select-group-hook (function (lambda () (mapcar (function (lambda (header) (nntp-set-header-subject header (mime/decode-string (gnus-header-subject header)) ))) gnus-newsgroup-headers) ))) (define-key gnus-summary-mode-map "\et" 'tm-gnus/toggle-mime-header-decoding-mode) (define-key gnus-summary-mode-map "v" 'tm-gnus/view-message) (define-key gnus-summary-mode-map "\e\r" (function (lambda () (interactive) (gnus-summary-scroll-up -1) ))) (fset 'gnus-article-set-mode-line 'tm-gnus/article-set-mode-line) (add-hook 'gnus-article-mode-hook (function mime/add-header-decoding-mode-to-mode-line)) (add-hook 'gnus-article-prepare-hook (function (lambda () (if mime/header-decoding-mode (mime/decode-message-header) ))) t)