;;; MORIOKA Tomohiko <morioka@jaist.ac.jp>
;;; Shuhei KOBAYASHI <shuhei@cmpt01.phys.tohoku.ac.jp>
;;; Oscar Figueiredo <figueire@lspsun2.epfl.ch>
-;;; modified by SHIONO Jun'ichi <jun@p5.nm.fujitsu.co.jp>,
-;;; and Steinar Bang <steinarb@falch.no>,
+;;; modified by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
;;;
;;; Keywords: news, MIME, multimedia, multilingual, encoded-word
;;;
(require 'vm)
(defconst tm-vm/RCS-ID
- "$Id: tm-vm.el,v 7.10 1995/11/16 17:07:02 morioka Exp $")
+ "$Id: tm-vm.el,v 7.18 1995/11/20 02:48:34 morioka Exp $")
(defconst tm-vm/version (get-version-string tm-vm/RCS-ID))
(define-key vm-mode-map "Z" 'tm-vm/view-message)
(or tm-vm/use-tm-patch
(progn
;;;
-;; by Steinar Bang <steinarb@falch.no>
-(setq vm-summary-format "%n %*%a %-17.17F %-3.3m %2d %4l/%-5c, %I\"%UA\"\n")
-
(defvar tm-vm/chop-full-name-function 'tm-vm/default-chop-full-name)
(setq vm-chop-full-name-function tm-vm/chop-full-name-function)
(cdr ret))
ret)))
-;; by Steinar Bang <steinarb@falch.no>
-(defun vm-summary-function-A (m)
- (mime-eword/decode-string (vm-su-subject m))
+(require 'vm-summary)
+(or (fboundp 'tm:vm-su-subject)
+ (fset 'tm:vm-su-subject (symbol-function 'vm-su-subject))
+ )
+(defun vm-su-subject (m)
+ (mime-eword/decode-string (tm:vm-su-subject m))
)
;;;
))
(defun tm-vm/preview-current-message ()
;;; suggested by Simon Rowe <smr@robots.oxford.ac.uk>
- ;;; (c.f. [tm-eng:163])
+ ;;; (cf. [tm-eng:163])
;; Selecting a new mail message, but we're already displaying a mime
;; on in the window, make sure that the mail buffer is displayed.
(if (get-buffer-window "*MIME-out*")
(delete-window (get-buffer-window (get-buffer "*MIME-out*")))
)
- (display-buffer (current-buffer))
(if (and tm-vm/automatic-mime-preview
+ ;; fixed by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
+ ;; 1995/11/17 (cf.[tm-ja:1120])
+ (display-buffer (current-buffer))
(let* ((mp (car vm-message-pointer))
(ct (vm-get-header-contents mp "Content-Type:"))
(cte (vm-get-header-contents
))))
)
(let ((win (selected-window)))
+ (let ((pwin (and mime::article/preview-buffer
+ (get-buffer mime::article/preview-buffer)
+ (get-buffer-window mime::article/preview-buffer))))
+ (if pwin
+ (delete-window pwin)
+ ))
+ (vm-select-folder-buffer)
(vm-display (current-buffer) t
'(tm-vm/preview-current-message
vm-preview-current-message)
- '(tm-vm/preview-current-message reading-message))
+ (list this-command 'reading-message))
(mime/viewer-mode)
+ (run-hooks 'tm-vm/vm-select-message-hook)
+ (vm-display (current-buffer) t
+ '(tm-vm/preview-current-message
+ vm-preview-current-message)
+ (list this-command 'reading-message))
(select-window win)
- )))
+ (vm-display-buffer (current-buffer))
+ ;; (vm-display (current-buffer) t
+ ;; '(tm-vm/preview-current-message
+ ;; vm-preview-current-message)
+ ;; '(vm-summarize reading-message))
+ )
+ ;; fixed by Oscar Figueiredo <figueire@lspsun2.epfl.ch>
+ ;; 1995/11/17
+ (if (and mime::article/preview-buffer
+ (get-buffer mime::article/preview-buffer))
+ (kill-buffer mime::article/preview-buffer))
+ (if tm-vm/automatic-mime-preview
+ (let (buffer-read-only)
+ (mime/decode-message-header)
+ (run-hooks 'tm-vm/vm-select-message-hook)
+ ))
+ ))
(add-hook 'vm-select-message-hook 'tm-vm/preview-current-message)
(add-hook 'vm-visit-folder-hook 'tm-vm/preview-current-message)
;; fixed by Oscar Figueiredo <figueire@lspsun2.epfl.ch>
-;; 1995/11/14 (c.f. [tm-eng:162])
+;; 1995/11/14 (cf.[tm-eng:162])
(defun tm-vm/scroll-forward ()
(interactive)
(if (not tm-vm/automatic-mime-preview)
- (vm-scroll-forward)
+ ;; fixed by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
+ ;; 1995/11/17 (cf.[tm-ja:1119])
+ (progn
+ (setq this-command 'vm-scroll-forward)
+ (vm-scroll-forward))
(let* ((summary-buffer (or vm-summary-buffer
(and (eq major-mode 'vm-summary-mode)
(current-buffer))))
(set-buffer summary-buffer)
vm-mail-buffer))
(mail-win (get-buffer-window mail-buffer))
- (preview-win (get-buffer-window
- (save-excursion
- (set-buffer mail-buffer)
- mime::article/preview-buffer))))
+ (preview-buf (save-excursion
+ (set-buffer mail-buffer)
+ mime::article/preview-buffer))
+ (preview-win (and preview-buf (get-buffer-window preview-buf)))
+ )
(if preview-win
(progn
(select-window preview-win)
(scroll-up)
(switch-to-buffer mail-buffer)
(select-window summary-win))))
+ ;; fixed by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
+ ;; 1995/11/17 (cf.[tm-ja:1119])
+ (setq this-command 'vm-scroll-forward)
(vm-scroll-forward)
(save-excursion
(set-buffer summary-buffer)
(setq mail-win (get-buffer-window vm-mail-buffer)))
- (if mail-win
+ ;; fixed by Oscar Figueiredo <figueire@lspsun2.epfl.ch>
+ ;; 1995/11/17
+ (if (and mail-win
+ mime::article/preview-buffer
+ (get-buffer mime::article/preview-buffer))
(progn
(select-window mail-win)
(switch-to-buffer mime::article/preview-buffer)
(defun tm-vm/scroll-backward ()
(interactive)
(if (not tm-vm/automatic-mime-preview)
- (vm-scroll-backward nil)
+ ;; fixed by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
+ ;; 1995/11/17 (cf.[tm-ja:1119])
+ (progn
+ (setq this-command 'vm-scroll-backward)
+ (vm-scroll-backward nil))
(let* ((summary-buffer (or vm-summary-buffer
(and (eq major-mode 'vm-summary-mode)
(current-buffer))))
(set-buffer summary-buffer)
vm-mail-buffer))
(mail-win (get-buffer-window mail-buffer))
- (preview-win (get-buffer-window
- (save-excursion
- (set-buffer mail-buffer)
- mime::article/preview-buffer))))
+ (preview-buf (save-excursion
+ (set-buffer mail-buffer)
+ mime::article/preview-buffer))
+ (preview-win (and preview-buf (get-buffer-window preview-buf)))
+ )
(if preview-win
(progn
(select-window preview-win)
(scroll-down)
(switch-to-buffer mail-buffer)
(select-window summary-win))))
+ ;; fixed by SHIONO Jun'ichi <jun@case.nm.fujitsu.co.jp>
+ ;; 1995/11/17 (cf.[tm-ja:1119])
+ (setq this-command 'vm-scroll-backward)
(vm-scroll-backward nil)
(save-excursion
(set-buffer summary-buffer)
(setq mail-win (get-buffer-window vm-mail-buffer)))
- (if mail-win
+ (if (and mail-win
+ mime::article/preview-buffer
+ (get-buffer mime::article/preview-buffer))
(progn
(select-window mail-win)
+ (goto-char (point-max))
(switch-to-buffer mime::article/preview-buffer)
(select-window summary-win)))
)))
))
;; fixed by Oscar Figueiredo <figueire@lspsun2.epfl.ch>
-;; 1995/11/14 (c.f. [tm-eng:162])
+;; 1995/11/14 (cf. [tm-eng:162])
(defun tm-vm/quit ()
(interactive)
(save-excursion
;;;
;; 1995/11/9 by Shuhei KOBAYASHI <shuhei@cmpt01.phys.tohoku.ac.jp>
-;; (c.f. [tm ML:1075])
+;; (cf. [tm ML:1075])
(defun tm-vm/insert-message (&optional message)
(interactive)
(let* (mail-yank-hooks
'mime-setup
(function
(lambda ()
- (remove-hook 'mail-mode-hook 'mime/editor-mode)
- (add-hook 'vm-mail-mode-hook 'mime/editor-mode)
+ ;;(remove-hook 'mail-mode-hook 'mime/editor-mode)
+ ;;(add-hook 'vm-mail-mode-hook 'mime/editor-mode)
(setq vm-forwarding-digest-type "rfc1521")
(setq vm-digest-send-type "rfc1521")
)))
+;;; @ for BBDB
+;;;
+
+(call-after-loaded
+ 'bbdb-vm
+ (function
+ (lambda ()
+ (or (fboundp 'tm:bbdb/vm-update-record)
+ (fset 'tm:bbdb/vm-update-record
+ (symbol-function 'bbdb/vm-update-record))
+ )
+ (defun bbdb/vm-update-record (&optional offer-to-create)
+ (vm-select-folder-buffer)
+ (let ((vm-mail-buffer
+ (if (and mime::article/preview-buffer
+ (get-buffer mime::article/preview-buffer))
+ mime::article/preview-buffer
+ (current-buffer)
+ ))
+ (bbdb/vm-update-record-recursive
+ (boundp 'bbdb/vm-update-record-recursive))
+ bbdb/vm-update-record-recursive ret)
+ (let ((bbdb/vm-update-record-answer
+ (if (boundp 'bbdb/vm-update-record-answer)
+ (setq bbdb/vm-update-record-answer
+ (or bbdb/vm-update-record-answer
+ (tm:bbdb/vm-update-record)
+ ))
+ (setq ret (tm:bbdb/vm-update-record))
+ nil)))
+ (or bbdb/vm-update-record-answer ret)
+ )))
+ (defun tm-vm/bbdb-update-record (&optional offer-to-create)
+ (let ((vm-mail-buffer (current-buffer)))
+ (tm:bbdb/vm-update-record offer-to-create)
+ ))
+ (remove-hook 'vm-select-message-hook 'bbdb/vm-update-record)
+ (remove-hook 'vm-show-message-hook 'bbdb/vm-update-record)
+ (add-hook 'tm-vm/select-message-hook 'tm-vm/update-record)
+ )))
+
+
;;; @ end
;;;