[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]

[vine-users:030546] Re: MH変換


長谷川です。こんにちは。
Vine と直接の関係はなくなってしまいましたが、話の流れ的に返信させて
いただきたいと思います。「Outlook Express ユーザーが1人でも減ると
いいなぁ」という気持ちもあったりします(苦笑)。

わざわざ言うまでもないとは思いますが、以下に書くことは、あくまで
「私はこうしました」ということだけです。正しい方法なのかどうかは
分かりませんし、動作の保証等も全くできません。
(kazu さんからのメールが届いたのは、既にインポート作業を終了した後
 でした(^^;)。先に読んでいたらもう少し簡単にできたのかも知れません。)

とりあえず自分のところでは、特に問題なくインポートできたような気は
していますが、問題点の御指摘やアドバイス等をお待ちしております。

# 「問題なく」とは言っても「Linux 上の Wanderlust で読めるように
# なった *みたい* 」という程度とお考え下さい(汗)。なにぶん、まだ
# Wanderlust 歴 1 日なもので…。

なお、私は Outlook Express 5 を使っていて Winbiff その他は使った
ことがありませんので、本当に御参考程度にお読み下さい。
(万が一お試しになる方は、バックアップ等をお忘れなく…)

At Sat, 13 Jan 2001 20:27:34 +0900,
Yukio Tani <tani-yukio@yis.yamatake.co.jp> wrote:
> 後一点は、既存のメールを如何にしてMH形式に変換するかです。
> この部分について、kazu様からの情報を基に勉強してみます。

私の場合は Vine をインストールする前に、OE5Conv と MailExp という
ツールをダウンロードしておきました。MailExp は Winbiff にも対応
しているようです。

kazu さんに御紹介いただいたページからもリンクが張られているよう
ですが、一応ここにも書いておきます。

MailExp    http://www.digico-m..com/shin1/
OE5Conv    http://www02.so-net.ne.jp/~home/oe5conv/

1)上記ツールを使って mbox 形式(MailExp では「標準 UNIX From 形式の
  メールボックス」という表現をする模様)に変換する。

  MailExp の「出力」タブで、ファイル形式を「標準 UNIX From」にすると
  その直下にボタンが現れる。ここに書かれている「メールの区切り」を
  表す文字列は、ここではデフォルトの dummy@mailexp.com のままとする。
  (同様に OE5Conv の場合も「区切り文字列」は変えないものとします。)

2)できあがった mbox 形式のファイル(ここでは仮に foo.mbox)を Linux の
  適当なディレクトリへコピー。
  (スクリプトがいいかげんなので、作業用のディレクトリを新規に作成して、
   そこにコピーして下さい。)

3)そのディレクトリに、このメールの末尾のスクリプトファイルを作成する。

  (MailExp Ver.2.8 用と OE5Conv Ver.2.1.3 用の2種類を作ってみました。
   適合する方をお使い下さい。Perl 5 専用です。なお、MailExp 用の方を
   実行するには、Jcode.pm や Base64.pm 等の Perl Module が必要となり
   ます。私は、
        http://openlab.ring.gr.jp/Jcode/index-j.html
        http://www.perl.com/CPAN-local/modules/
   あたりからダウンロードしました。詳細はここでは省きます。)

  ここでは仮に mbox2mh.pl という名前でセーブし、そのディレクトリで、

    $ chmod u+x mbox2mh.pl

  などとして実行属性をつける。

4)そのディレクトリで、以下の要領でスクリプトを実行する。

    $ ./mbox2mh.pl foo.mbox

  MailExp 用の方では、Jcode.pm で Use of uninitialized value という
  エラーが何回か発生することがあるかと思いますが、多分無視してしまって
  大丈夫…であって欲しい…。
  (Subject が空っぽの場合に出るのではないかと予想してます。)

  それ以外のエラーが出たら、何かがおかしいです(^^;)。

5)できあがった「1 から始まる連番のファイル一式」を Wanderlust で
  管理している適当なディレクトリへコピー(or 移動)。

  (~/Mail 以下に適当なディレクトリを新規に作成して、そこに移動するのが
   よろしいかと。)

6)Wanderlust を起動し、必要に応じて、
  wl-folder-update-recursive-current-entity というコマンドを実行する。
  (まだショートカットというかキーバインドを1つも覚えていないので(汗)、
   こういう書き方になってしまってすみません。)

以上です。「おい、そりゃまずいだろ」とか「フツーはこうでしょ?」等
ありましたら、是非是非御指摘下さりますようお願い致します。

# Wanderlust いいですね。とても気に入ってしまいました。
# キーバインドを覚えれば、もっと快適になるに違いない(^^;)。


-------- ↓ キリトリセン mbox2mh.pl for MailExp Ver.2.8 ↓ --------
#! /usr/bin/perl -w

#
#    for mbox data made with MailExp Ver.2.8
#
use Jcode;
#use MIME::Base64;

$ctr = 0;
while (<>) {
    s|\x0D\x0A$||;  # not use chomp nor chop
    $jis = jcode($_)->jis;
    if ($jis =~ /^From dummy\@mailexp\.com /) {
	$ctr++;
	open(FH_OUT, ">$ctr") or die;
	next;
    }
    if ($jis =~ /^(Subject|From):(.*)/) {
	$encoded = Jcode->new($2);
	$encoded = $encoded->mime_encode();
	$jis = "$1:$encoded";
    }
    print FH_OUT "$jis\n";
}
-------- ↑ キリトリセン mbox2mh.pl for MailExp Ver.2.8 ↑ --------


-------- ↓ キリトリセン mbox2mh.pl for OE5Conv Ver.2.3.1 ↓ --------
#! /usr/bin/perl -w

#
#    for mbox data made with OE5Conv Ver.2.1.3
#
$ctr = 0;
while (<>) {
    s|\x0D\x0A$||;  # not use chomp nor chop
    if (/^From oe5conv\@somewhere Tue Oct 10 00:00:00 2000/) {
	$ctr++;
	open(FH_OUT, ">$ctr") or die;
	next;
    }
    print FH_OUT "$_\n";
}
-------- ↑ キリトリセン mbox2mh.pl for OE5Conv Ver.2.3.1 ↑ --------

--
K.Hasegawa  herbal@mint.freemail.ne.jp

この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
References: