[Mew-Win32 00426] mew-gnus (Re: delete temporarily directory)

YAMAGUCHI, Shuhei yamagus at example.com
1998年 3月 12日 (木) 02:33:44 JST


>>> In article <19980310150243P.shirai at example.com>,
>>>    Hideyuki SHIRAI <Shirai at example.com> writes:

  Shirai> 小関> あと、そうそう mew-init-hook で思い出したけど、
  Shirai> 小関> 
  Shirai> 小関> Gnus -> mew-gnusで記事を書く -> mew
  Shirai> 小関> 
  Shirai> 小関> という順番の時に mew-init-hook が呼ばれないような気がするの
  Shirai> 小関> は気のせいかな?
(snip)
  Shirai> # 試してませんが、(mew-set-environment)→(mew-init)でどうでしょう?

b24のをベースにちょっと修正してみました。
ついでに、summary-saveの保存先が+で始まるのがずっと気になっていたので、
デフォルトを=で始まるようにしてみました。
今まで通り+で始まってほしい人は
(setq mew-gnus-save-folder-prefix "+")
してください。
#すっかり試験に使ってるなぁ…。 ^^;

でわでわ
-- 
yamagus at example.com / やまぐち@ねっとらぴゅたの住人
  yamagus at example.com / 山口 修平
PGP-Fingerprint: 25 0F 6F E1 57 AD 56 08  3A BC D0 9B 48 AF 31 7A
#寄生された猫のcondition-case手術はMew-distでおこないました。
-------------- next part --------------
--- mew-gnus.el.orig	Tue Feb 17 10:55:59 1998
+++ mew-gnus.el	Thu Mar 12 02:08:47 1998
@@ -42,6 +42,16 @@
 
 (defvar mew-gnus-save-preserve-dot t)
 
+(defvar mew-gnus-save-folder-prefix "=")
+
+(defun mew-gnus-mew-init ()
+  (message "Setting Mew world ...")
+  (mew-set-environment)
+  (if mew-use-bbdb (require 'bbdb-com)) ;; bbdb is implicitly required
+  (run-hooks 'mew-init-hook)
+  (mew-status-update t)
+  (message "Setting Mew world ... done"))
+
 (defun mew-gnus-newsgroup-name ()
   (if mew-gnus-save-preserve-dot
       gnus-newsgroup-name
@@ -51,24 +61,26 @@
   "Save this article to MH folder (using `rcvstore' in MH library).
 Optional argument FOLDER specifies folder name."
   (interactive)
+  (or mew-temp-dir
+      (save-excursion
+	(mew-gnus-mew-init)))
   (let ((gnus-show-mime nil))
     (gnus-summary-select-article t t))  ;; force to display all headers
   (gnus-eval-in-buffer-window gnus-article-buffer
     (save-restriction
       (widen)
-      (or mew-folder-alist
-	  (setq mew-folder-list (mew-folder-make-list nil)
-		mew-folder-alist (mew-folder-make-alist mew-folder-list)))
       (let ((folder
 	     (or folder
 		 (mew-input-folder
 		  (or mew-gnus-save-fixed-folder
 		      (car (mew-refile-guess-by-alist))
-		      (concat "+" (mew-gnus-newsgroup-name))))))
+		      (concat mew-gnus-save-folder-prefix
+			      (mew-gnus-newsgroup-name))))))
 	    (errbuf (get-buffer-create " *GNUS rcvstore*")))
-	(if (not (equal (aref folder 0) ?+))
+	(if (not (or (equal (aref folder 0) ?=)
+		     (equal (aref folder 0) ?+)))
 	    (message (format 
-		      "First letter of '%s' must be '+'."
+		      "First letter of '%s' must be '=' or '+'."
 		      folder))
 	  (unwind-protect
 	      (mew-piolet
@@ -87,7 +99,7 @@
   (interactive)
   (or mew-temp-dir
       (save-excursion
-	(mew-set-environment)))
+	(mew-gnus-mew-init)))
   (let ((file (mew-folder-new-message mew-draft-folder)))
     (if (null mew-mail-path) (mew-init))
     (mew-current-set 'window (current-window-configuration))
@@ -105,7 +117,7 @@
   (interactive)
   (or mew-temp-dir
       (save-excursion
-	(mew-set-environment)))
+	(mew-gnus-mew-init)))
   (let ((file (mew-folder-new-message mew-draft-folder))
 	from cc subject date to reply-to newsgroups in-reply-to references
 	distribution)


Mew-win32 メーリングリストの案内