$ tar zxvf ezmlm-0.53.tar.gz $ tar zxvf ezmlm-idx-0.40.tar.gz $ cp -R ezmlm-idx-0.40/* ezmlm-0.53 $ cd ezmlm-0.53 $ patch < idx.patch |
$ patch < ezmlmrc.jp.patch |
$ make | < -- 本体のmake | ||
$ make man | < -- man pageのmake | ||
$ cp ezmlmrc.jp ezmlmrc <-- "ezmlm-idx"からのメッセージを日本語にする $ su # make setup |
ezmlm-make -オプション dir dot local host | ||
dir | : | メーリングリストを置くディレクトリー |
dot | : | メーリングリスト用の .qmail ファイル名 |
local | : | メーリングリスト名 |
host | : | メーリングリストのサーバー |
メーリングリスト(ML)の投稿先は local@host となる |
-a | アーカイブに保存する(default) | -A | アーカイブに保存しない |
-c | .ezmlmrcを使用する | -C | .ezmlmrcを使用しない(default) |
-d | ダイジェストリストを作成する | -D | ダイジェストリストを作成しない(default) |
-e | 既存のMLを修正する | -E | 既存のMLを修正しない(default) |
-f | prefixを付ける | -F | prefixを付けない(default) |
-g | アーカイブへのアクセスを制限する | -G | アーカイブへのアクセスを制限しない(default) |
-i | indexを作成する(default) | -I | indexを作成しない |
-k | ブラックリストを作成する | -K | ブラックリストを作成しない(default) |
-l | 遠隔管理者に参加者リストを送る | -L | 遠隔管理者に参加者リストを送らない(default) |
-m | 投稿を審査する | -M | 投稿を審査しない(default) |
-n | 遠隔管理でのDIR/textの編集許可 | -N | 遠隔管理でのDIR/textの編集不許可(default) |
-p | 公開MLとする(default) | -P | MLを公開しない |
-q | リクエスト形式を使用する | -Q | リクエスト形式を使用しない(default) |
-r | 遠隔管理をする | -R | 遠隔管理をしない(default) |
-s | 登録の管理をする | -S | 登録の管理をしない(default) |
-t | 最後に文書を添付する | -T | 最後に文書を添付しない(default) |
-u | 投稿を参加者だけに制限する | -U | 投稿を参加者だけに制限しない(default) |
-v | versionを表示する | -V | versionを表示する |
-x | Replyアドレスにmailtoを付け、dir/mimeremoveを作る(htmlメール/添付ファイルの除去) |
(aliasユーザーで作業) $ ezmlm-make -オプション ~/test ~/.qmail-test test hoge.hoge.com |
(rootユーザーで作業) # ezmlm-make -オプション /usr/local/ml/test /var/qmail/alias/.qmail-test test hoge.hoge.com # chown -R alias /usr/local/ml/test <-- /usr/local/ml/test のオーナーを ユーザー alias にする |
ユーザー名-メーリングリスト名@ホスト名 |
(taroで作業) $ ezmlm-make -オプション ~/ml/momo ~/.qmail-momo taro-momo hoge.hoge.com *下線部分に注意 |
[ml: 12] どうしました |
Re: 12] どうしました |
exp.) [hoge-ml] --> [hoge-ml: #] |
</prefix#fE/> </prefix#fE/> [<#L#>] ---> [<#L#>: #] |
Re: [hoge-ml: 11] わかりません |
Re: [hoge-ml: 11] わかりません --> [hoge-ml: 12] Re: わかりません |
|sed 's/^Subject: \(R[Ee]:\) \[hoge-ml: [0-9]*\] \(R[Ee]: \)*\(.*\)$/Subject: \1 \3/' |
|<#B#>/ezmlm-send '<#D#>' ↓ |sed 's/^Subject: \(R[Ee]:\) \[<#L#>: [0-9]*\] \(R[Ee]: \)*\(.*\)$/Subject: \1 \3/' |<#B#>/ezmlm-send '<#D#>' |
|sed 's/^Subject: \(R[Ee]:\) .*[0-9]*\] \(R[Ee]: \)*\(.*\)$/Subject: \1 \3/' ^^^^^^^^^^ |
Subject: Re: [hoge-ml: 11] わかりません --> Subject: Re: わかりません |
| /usr/local/bin/ezmlm/mod_subj.pl 'hoge_ml:' |/usr/local/bin/ezmlm/ezmlm-send ..... ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ <-- 追加する |
|<#B#>/ezmlm-send '<#D#>' ↓ |<#B#>/mod_subj.pl '<#L#>:' |<#B#>/ezmlm-send '<#D#>' |
#!/usr/bin/perl # require "mimew.pl" ; require "mimer.pl" ; $prefix = @ARGV[0] ; ## prefixの取得 $fg = 1 ; while (<STDIN>) { chomp ; if ($fg == 1 && length == 0) { $fg = 0 ; } ## mail header の終了確認 if ($fg == 1) { if (/^Subject:\s/) { ## Subject行? $subj = $_ ; $subj = mimedecode($_); ## デコードする(subject全体がされるメーラー対策) $subj = mimeencode($subj); ## 再度エンコード $subj =~ s/\n//g ; ## エンコードされた内容から改行文字を削除 $subj =~ s/^Subject:(.*) \[$prefix [0-9]*\](.*)$/Subject: $1 $2/ ; ## prefixの削除 $subj =~ s/\s+/ /g ; ## 連続する空白を一つにする $subj =~ s/(R[Ee]:\s)+/Re: /g ; ## 連続する'Re:'を一つにする $subj =~ s/^Subject: (R[Ee]: )*(.*)$/Subject: $1$2/ ; ## subjectの再構成 print $subj . "\n" ; $fg = 0 ; } else { print $_ ."\n" ; } } else { print $_ ."\n" ; } } |
Reply-to: hoge-ml@goge.hoge.com |
</headeradd#E/> : Reply-To: <#L#>@<#H#> <---- 追加する |
application/x-zip-compressed application/x-msdownload |
application/x-zip-compressed application/x-msdownload |
iso-2022-jp |
</charset/> iso-2022-jp # charset end |
. | . | . |
# ezmlm-sub MLのディレクトリー/deny 投稿禁止アドレス | ||
. |