From cea9152916b11929a07d20d3c5c3d142fa5e4a23 Mon Sep 17 00:00:00 2001 From: teranisi Date: Mon, 1 Oct 2001 07:29:28 +0000 Subject: [PATCH] * wl.el (wl): Call `wl-check-environment' before `wl-plugged-init'. * elmo-nmz.el (toplevel): Require 'mime-edit. (elmo-nmz-content-type-alist): Abolished. (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if content is not a message. (elmo-map-message-fetch): Changed behavior exept for message content; Detect mime-charset automatically, Use `mime-find-file-type' to detect content-type, Add From: and Subject: field. * NEWS.ja: Added ACAP description. --- ChangeLog | 4 ++++ NEWS.ja | 2 ++ elmo/ChangeLog | 10 ++++++++++ elmo/elmo-nmz.el | 58 +++++++++++++++++++++++++++++++++--------------------- wl/ChangeLog | 4 ++++ wl/wl.el | 2 +- 6 files changed, 57 insertions(+), 23 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3d7ff59..933c8f6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2001-10-01 Yuuichi Teranishi + + * NEWS.ja: Added ACAP description. + 2001-09-04 TAKAHASHI Kaoru * WL-MK (toplevel): Ignore Nemacs. diff --git a/NEWS.ja b/NEWS.ja index 2f5a043..b7dc2a1 100644 --- a/NEWS.ja +++ b/NEWS.ja @@ -13,6 +13,8 @@ Wanderlust NEWS (日本語版) -- User-visible changes in Wanderlust. 書式: '[' 'namazu 検索式' ']' [ 'namazu index のパス(絶対パス)' ] +* ACAP (RFC2244) に対応しました(実験的)。 + * IMAP4 のメッセージをパート毎にキャッシュとして保存できるようになりました。 巨大なパートをスキップした場合でも、スキップしたパート以外は オフライン状態で読み返すことができるようになりました。 diff --git a/elmo/ChangeLog b/elmo/ChangeLog index 1b2caa7..81fc922 100644 --- a/elmo/ChangeLog +++ b/elmo/ChangeLog @@ -1,3 +1,13 @@ +2001-10-01 Yuuichi Teranishi + + * elmo-nmz.el (toplevel): Require 'mime-edit. + (elmo-nmz-content-type-alist): Abolished. + (elmo-nmz-msgdb-create-entity): Add From: and Subject: field if + content is not a message. + (elmo-map-message-fetch): Changed behavior exept for message content; + Detect mime-charset automatically, Use `mime-find-file-type' to detect + content-type, Add From: and Subject: field. + 2001-09-29 Hiroya Murata * elmo-nmz.el (elmo-nmz-content-type-alist): New variable. diff --git a/elmo/elmo-nmz.el b/elmo/elmo-nmz.el index 0fc85ef..c13e505 100644 --- a/elmo/elmo-nmz.el +++ b/elmo/elmo-nmz.el @@ -30,6 +30,7 @@ ;; (require 'elmo) (require 'elmo-map) +(require 'mime-edit) (defcustom elmo-nmz-default-index-path "~/Mail" "*Default index path for namazu." @@ -51,9 +52,6 @@ :type '(repeat string) :group 'elmo) -(defvar elmo-nmz-content-type-alist '(("\.html?\\'" . "text/html")) - "*An alist of (REGEXP . Content-Type) related filename.") - ;;; "namazu search" (eval-and-compile (luna-define-class elmo-nmz-folder @@ -88,9 +86,21 @@ (defun elmo-nmz-msgdb-create-entity (folder number) "Create msgdb entity for the message in the FOLDER with NUMBER." - (elmo-msgdb-create-overview-entity-from-file - number - (elmo-map-message-location folder number))) + (let ((location (elmo-map-message-location folder number)) + entity uid) + (setq entity (elmo-msgdb-create-overview-entity-from-file number location)) + (unless (or (> (length (elmo-msgdb-overview-entity-get-to entity)) 0) + (> (length (elmo-msgdb-overview-entity-get-cc entity)) 0) + (not (string= (elmo-msgdb-overview-entity-get-subject entity) + elmo-no-subject))) + (elmo-msgdb-overview-entity-set-subject entity location) + (setq uid (nth 2 (file-attributes location))) + (elmo-msgdb-overview-entity-set-from entity + (concat + (user-full-name uid) + " <"(user-login-name uid) "@" + (system-name) ">"))) + entity)) (luna-define-method elmo-folder-msgdb-create ((folder elmo-nmz-folder) numlist new-mark @@ -171,23 +181,27 @@ (when (file-exists-p location) (insert-file-contents-as-binary location) (unless (or (std11-field-body "To") - (std11-field-body "Resent-To") (std11-field-body "Cc") - (std11-field-body "Bcc") - (std11-field-body "Newsgroups")) - (erase-buffer) - (set-buffer-multibyte t) - (insert-file-contents location) - (goto-char (point-min)) - (insert "Content-Type: " - (or (cdr (elmo-string-matched-assoc - location - elmo-nmz-content-type-alist)) - "text/plain") - "; charset=ISO-2022-JP\nMIME-Version: 1.0\n\n") - (encode-coding-region (point-min) (point-max) - (mime-charset-to-coding-system "ISO-2022-JP")) - (set-buffer-multibyte nil)))) + (std11-field-body "Subject")) + (let (charset guess uid) + (erase-buffer) + (set-buffer-multibyte t) + (insert-file-contents location) + (setq charset (detect-mime-charset-region (point-min) + (point-max))) + (goto-char (point-min)) + (setq guess (mime-find-file-type location)) + (setq uid (nth 2 (file-attributes location))) + (insert "From: " (concat (user-full-name uid) + " <"(user-login-name uid) "@" + (system-name) ">") "\n") + (insert "Subject: " location "\n") + (insert "Content-Type: " + (concat (nth 0 guess) "/" (nth 1 guess)) + "; charset=" (upcase (symbol-name charset)) + "\nMIME-Version: 1.0\n\n") + (encode-mime-charset-region (point-min) (point-max) charset) + (set-buffer-multibyte nil))))) (luna-define-method elmo-map-folder-list-message-locations ((folder elmo-nmz-folder)) diff --git a/wl/ChangeLog b/wl/ChangeLog index ef3256b..558616c 100644 --- a/wl/ChangeLog +++ b/wl/ChangeLog @@ -1,3 +1,7 @@ +2001-10-01 Yuuichi Teranishi + + * wl.el (wl): Call `wl-check-environment' before `wl-plugged-init'. + 2001-09-28 TAKAHASHI Kaoru * wl.el (wl-toggle-plugged): Use `not' instead of `null' for diff --git a/wl/wl.el b/wl/wl.el index 92e34c2..af68ce4 100644 --- a/wl/wl.el +++ b/wl/wl.el @@ -763,7 +763,6 @@ If ARG (prefix argument) is specified, folder checkings are skipped." (wl-init) (condition-case obj (progn - (wl-plugged-init (wl-folder arg)) (if check (condition-case nil (progn @@ -772,6 +771,7 @@ If ARG (prefix argument) is specified, folder checkings are skipped." (message "Checking environment...done")) (error) (quit))) + (wl-plugged-init (wl-folder arg)) (unless arg (run-hooks 'wl-auto-check-folder-pre-hook) (wl-folder-auto-check) -- 1.7.10.4