[Mew-dist 05058] Re: mew-1.93b39

SAKAI Kiyotaka ksakai at example.com
1998年 6月 12日 (金) 17:13:43 JST


>> In article <19980611193654M.kazu at example.com>, Kazu Yamamoto (山本和彦) <kazu at example.com> writes:

> (2) imjoin は、メッセージ群が 1 つのフォルダにあると仮定していますが、こ
> れはVirtual モードにはきつい仮定です。mew-summary-multi-msgs を使う関数
> をみてもらうと分ると思いますが、Mew では @ を Virtual モードでも扱えるよ
> うになっています。(e.g. unshar など) 先日の y-koba さんのエラーの指摘も
> 含めて見直してもらえませんか? > 酒井さん

imjoin の引数に

  +inbox/100
  /home/ksakai/Mail/inbox/100

のような、フォルダからの相対パス、ファイルの絶対パスを取れるように拡張
しました。

これで、mew-summary-join は以下の定義で大丈夫だと思います。

(defun mew-summary-join ()
  (interactive)
  (mew-summary-multi-msgs
   (let ((folder (mew-input-folder mew-inbox-folder)))
     (message "Joining marked messages to %s ..." folder)
     (apply 'mew-im-call-process nil mew-prog-imjoin
	    (format "--dst=%s" folder) FILES)
     (message "Joining marked messages to %s ... done" folder))))
-- 
酒井 清隆 (E-mail: ksakai at example.com)

-------------- next part --------------
===================================================================
RCS file: RCS/imjoin.in,v
retrieving revision 1.1
diff -u -r1.1 imjoin.in
--- imjoin.in	1998/06/12 07:13:52	1.1
+++ imjoin.in	1998/06/12 08:04:40
@@ -47,7 +47,7 @@
 ";
 
 @OptConfig = (
-	      'src;F;;'     => "Folder.",
+	      'src;f;;'     => "Folder.",
 	      'dst;s;+inbox;' => "Folder.",
 	      'verbose;b;;' => 'With verbose messages.',
 	      'debug;d;;'   => "With debug message.",
@@ -100,7 +100,13 @@
 	require IM::Folder && import IM::Folder qw(message_name);
 	my $msg;
 	foreach $msg (@msgs) {
-	    push(@paths, message_name($opt_src, $msg));
+	    if ($msg =~ /^\//) {
+		push(@paths, $msg);
+	    } elsif ($msg =~ /(.*)\/(\d+)/) {
+		push(@paths, message_name($1, $2));
+	    } else {
+		push(@paths, message_name($opt_src, $msg));
+	    }
 	}
     }
 


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