diff options
| author | fukachan <fukachan> | 2004-04-07 11:06:58 +0000 |
|---|---|---|
| committer | fukachan <fukachan> | 2004-04-07 11:06:58 +0000 |
| commit | 9984504f77ff7549b9d5c9e10fe2076dcc70b743 (patch) | |
| tree | ea06550eac32452aefcff116a0ebfb800910b449 | |
| parent | ddf915222f9b488b7ade43178d8d65dcf122391e (diff) | |
| download | fml8-9984504f77ff7549b9d5c9e10fe2076dcc70b743.tar.gz fml8-9984504f77ff7549b9d5c9e10fe2076dcc70b743.tar.bz2 fml8-9984504f77ff7549b9d5c9e10fe2076dcc70b743.zip | |
fix description to catch up current implementation.
fix variable names to current ones.
clean up.
56 files changed, 919 insertions, 432 deletions
diff --git a/fml/doc/ja/tutorial/changes/chapter.sgml b/fml/doc/ja/tutorial/changes/chapter.sgml index c629f5e6..c67a9dc6 100644 --- a/fml/doc/ja/tutorial/changes/chapter.sgml +++ b/fml/doc/ja/tutorial/changes/chapter.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: chapter.sgml,v 1.1.1.1 2004/04/02 04:39:48 fukachan Exp $ --> @@ -26,12 +26,12 @@ <para> fml4 は、ほとんどのコード(.plのもの)が独自に書かれています。このライセ -ンスは GNU Public License です。jcode.pl が例外で、詳しくは jcode.pl +ンスは GNU Public License です。jcode.pl が例外で、詳しくは jcode.pl の先頭部分のライセンスを参照して下さい。 </para> <para> -また、perl module (.pm) も使われており、それはソースツリーの module/ +また、perl module (.pm) も使われており、それはソースツリーの module/ の下に入っています。この下のライセンスも各モジュールに従って下さい。 </para> @@ -46,6 +46,28 @@ gnu はその名の通りです。img は BSD ライセンス準拠です。詳しくは、それ </sect1> +<sect1 id="changes.command.mail"> + <title> + fml4 と fml8 の違い: コマンドメール + </title> + +<para> +返事の際には、Accept-Languageなどを参考に言語の自動選択が行なわれます。 +詳しくは +<link linkend="language.preference"> +<xref linkend="language.preference"> +</link> +を参照して下さい。 +</para> + +<para> +ファイルを送り返す際、基本は MIME/Multipart です。 +現在、tar.gz や zip 形式などは未サポートです。 +</para> + +</sect1> + + <sect1 id="changes.cui"> <title> fml4 と fml8 の違い: コマンドラインでの操作 (makefml) @@ -81,7 +103,7 @@ makefml から実行される各コマンドの相違点は以下の通りです。 <table> <title> - fml4 と fml8 の違い: CUI (makefml もしくは fml コマンド) + fml4 と fml8 の違い: CUI (makefml もしくは fml コマンド) </title> <tgroup cols=3> @@ -107,4 +129,64 @@ makefml から実行される各コマンドの相違点は以下の通りです。 </sect1> +<sect1 id="changes.gui"> + <title> + fml4 と fml8 の違い: GUI (CGI) + </title> + +<para> +&fml4; の場合、インストール後に、あらためて GUI が使う .cgi スクリプト +の生成や apache のセットアップをする必要があります。 +</para> + +<para> +&fml8; では、newml 実行時に、GUI のスクリプトは用意されます。 +しかしながら、apache の設定などは実行しなければなりません。 +</para> + +<para> +インターフェイスの相違は、かなりあります。 +&fml4; は割と伝統的なベタベタな作りです。 +一方、&fml8; ではテーブルベースのものになっています。 +</para> + +</sect1> + + +<sect1 id="changes.filename"> + <title> + ファイル名のルール + </title> + +<para> +ファイル名の命名ルールについての詳細は +<link linkend="filename"> +<xref linkend="filename"> +</link> +を参照して下さい。 +いずれにせよ、 +&fml4; から &fml8; に変換するツールが頑張って、よろしくファイル名の変 +更などはしてくれるはずなので、手作業で変換することはないとおもいます。 +が、読む時に困るので、ここで差分を書いておきます。 +</para> + +<para> +受信者とメンバーリストを別々に管理するという方針は変わりませんが、 +ファイル名は異なります。 +actives は recipients となりました。 +一方、members はそのままです。 +</para> + +<para> +members-admin は、そのままです。 +仮想的に recipients-admin ファイルもあります。使われてはいません。 +</para> + +<para> +etc/passwd は etc/passwd-admin になり、フォーマットも若干変わりました。 +</para> + +</sect1> + + </chapter> diff --git a/fml/doc/ja/tutorial/command/chapter.sgml b/fml/doc/ja/tutorial/command/chapter.sgml index db27b548..afd8e2e4 100644 --- a/fml/doc/ja/tutorial/command/chapter.sgml +++ b/fml/doc/ja/tutorial/command/chapter.sgml @@ -1,8 +1,8 @@ <!-- - $FML: chapter.sgml,v 1.6 2002/07/07 01:57:10 fukachan Exp $ + $FML: chapter.sgml,v 1.7 2002/12/25 11:50:42 fukachan Exp $ --> -<chapter> +<chapter id="fml.command.modules"> <title> コマンド(コマンドメール、makefml、CGI) </title> diff --git a/fml/doc/ja/tutorial/command/dataflow.sgml b/fml/doc/ja/tutorial/command/dataflow.sgml index d0391702..da5ceaa6 100644 --- a/fml/doc/ja/tutorial/command/dataflow.sgml +++ b/fml/doc/ja/tutorial/command/dataflow.sgml @@ -1,5 +1,5 @@ <!-- - $FML: dataflow.sgml,v 1.1 2002/12/25 11:50:42 fukachan Exp $ + $FML: dataflow.sgml,v 1.2 2004/03/12 14:04:09 fukachan Exp $ --> @@ -47,7 +47,7 @@ <para> 2) メンバーだけに許されるコマンドの場合、 - command_restrictionsのルールに従って他の条件を確認し、 + command_mail_restrictionsのルールに従って他の条件を確認し、 許されたなら、呼び出しルーチンへ処理が移ります。 </para> @@ -63,7 +63,7 @@ FML::Command 経由でコマンドが実行されます。 admin コマンドの実行は、ここでは行なわれません。 「admin ...」コマンドは、まず一般ユーザ権限で実行され、 FML::Command::User::admin クラスが呼び出されます。 -この中で、$admin_command_restrictions に基づいて、リモート権限があるか? +この中で、$admin_command_mail_restrictions に基づいて、リモート権限があるか? が確認され、もう一度 FML::Command 経由で管理者権限の 「FML::Command::Admin::コマンド」クラスが呼び出されます。 </para> diff --git a/fml/doc/ja/tutorial/command/extension.sgml b/fml/doc/ja/tutorial/command/extension.sgml index 3393349a..5631a374 100644 --- a/fml/doc/ja/tutorial/command/extension.sgml +++ b/fml/doc/ja/tutorial/command/extension.sgml @@ -1,5 +1,5 @@ <!-- - $FML: extension.sgml,v 1.9 2003/04/13 04:36:10 fukachan Exp $ + $FML: extension.sgml,v 1.10 2003/04/15 14:51:36 fukachan Exp $ --> @@ -12,7 +12,7 @@ <sect1 id="fml.command.hack.commandmail"> <title> - コマンドの拡張: コマンドメール + コマンドの拡張: コマンドメールの場合 </title> @@ -52,7 +52,7 @@ FML::Command 以下から適当に cut and paste して というファイルを置き、site_default_config.cf に許可するコマンドリスト に追加してください。 <screen> -commands_for_user += uja +user_command_mail_allowed_commands += uja </screen> </para> @@ -73,7 +73,7 @@ FML::Command 以下から適当に cut and paste して というファイルを置き、site_default_config.cf に許可するコマンドリスト に追加してください。 <screen> -commands_for_privileged_user += uja +admin_command_mail_allowed_commands += uja </screen> </para> @@ -84,7 +84,7 @@ commands_for_privileged_user += uja <sect1 id="fml.command.hack.makefml"> <title> - コマンドの拡張: makefml + コマンドの拡張: makefml の場合 </title> @@ -117,7 +117,7 @@ FML::Command 以下から適当に cut and paste して </screen> というファイルを置けば有効になります モジュールを置くだけで有効になります。 -commands_for_ 系の変数の設定変更は不要です。 +*_allowed_commands 系の変数の設定変更は不要です。 </para> @@ -127,7 +127,7 @@ commands_for_ 系の変数の設定変更は不要です。 <sect1 id="fml.command.hack.cgi"> <title> - コマンドの拡張: CGI + コマンドの拡張: CGI の場合 </title> @@ -161,7 +161,7 @@ FML::Command 以下から適当に cut and paste して というファイルを置き、site_default_config.cf に許可するコマンドリスト に追加してください。 <screen> -commands_for_admin_cgi += uja +admin_cgi_allowed_commands += uja </screen> </para> diff --git a/fml/doc/ja/tutorial/command/internal.sgml b/fml/doc/ja/tutorial/command/internal.sgml index 24ac4da5..3f2c7cb3 100644 --- a/fml/doc/ja/tutorial/command/internal.sgml +++ b/fml/doc/ja/tutorial/command/internal.sgml @@ -1,5 +1,5 @@ <!-- - $FML: internal.sgml,v 1.6 2003/04/15 14:51:36 fukachan Exp $ + $FML: internal.sgml,v 1.7 2004/03/12 14:04:09 fukachan Exp $ --> <sect1 id="fml.command.internal.change"> @@ -14,6 +14,25 @@ </para> <para> +&fml4; では、適当な関数、たとえば myProcHelpFileSendBack を作り、 +%LocalProcedure に書いておきます。 +<screen> +%LocalProcedure = ( + 'help', 'myProcHelpFileSendBack', + ); +</screen> +myProcHelpFileSendBack をあえて書き下すと、つぎのようなものでしょう。 +<screen> +sub myProcHelpFileSendBack +{ + local($proc, *Fld, *e, *misc) = @_; + my $UJA_FILE = "/some/where/help"; + &SendFile($Envelope{'Addr2Reply:'}, "UJA $ML_FN", $UJA_FILE); +} +</screen> +</para> + +<para> &fmldevel; では help ファイルを送り返すコードの実体は FML::Command::User::help にあり、 FML::Process::Command クラスから @@ -36,7 +55,7 @@ sub process { my ($self, $curproc, $optargs) = @_; my $config = $curproc->{ config }; - my $charset = $config->{ reply_message_charset_ja }; + my $charset = $config->{ report_mail_charset_ja }; my $help_file = $config->{ help_file }; # template substitution: kanji code, $varname expansion et. al. @@ -62,8 +81,12 @@ sub process ここで $curproc はハッシュリファレンスで、&fml4; の %Envelope におおむ ね相当します。名前の通り、UNIX カーネルでおなじみの current process 構 造体へのポインタのようなもので、プロセスに関連するいろいろなデータ構造 -やオブジェクトへのリファレンスを含んでいます。そして $config ハッシュ -として蓄えられている設定変数空間は、&fml4; ではグローバル変数です。 +やオブジェクトへのリファレンスを含んでいます。 +</para> + +<para> +変数は、&fml4; ではグローバル変数群です。一方 &fml8; では $config オブ +ジェクトを通じてアクセスできる設定変数空間の中にあります。 </para> <para> @@ -77,10 +100,10 @@ $curproc->reply_message() は引数によって振舞いがことなりますが、 </para> <para> -キューに入れられたメッセージ群は、プロセスの終了直前に一通のメールとし -て組み立てなおされ、Mail::Delivery クラス経由で送信されます。メッセー -ジキューの種類がファイルとメッセージが混在していれば、適宜 MIME マルチ -パートのメッセージが生成されます。 +キューに入れられたメッセージ群は、プロセスの終了直前に受信者ごとにメッ +セージはまとめられ一通のメールとして組み立てなおされ、Mail::Delivery +クラス経由で送信されます。メッセージキューの種類がファイルとメッセージ +が混在していれば、適宜 MIME マルチパートのメッセージが生成されます。 </para> <para> diff --git a/fml/doc/ja/tutorial/command/module.sgml b/fml/doc/ja/tutorial/command/module.sgml index a51c956a..2cfa77f3 100644 --- a/fml/doc/ja/tutorial/command/module.sgml +++ b/fml/doc/ja/tutorial/command/module.sgml @@ -1,5 +1,5 @@ <!-- - $FML: module.sgml,v 1.3 2002/07/07 01:57:11 fukachan Exp $ + $FML: module.sgml,v 1.4 2003/04/15 14:51:36 fukachan Exp $ --> @@ -18,11 +18,11 @@ <para> FML::Command:: クラスは以下のような構成になっています。 <screen> -FML::Command FML::Command クラス以下への入口 +FML::Command FML::Command クラス以下への入口、dispatcher FML::Command::User ユーザ用コマンド群 FML::Command::Admin 管理者用コマンド群 </screen> -例えば、(コマンドメールでの)ユーザ用のコマンドの場合 +例えば、(コマンドメールでの)ユーザ用コマンドの場合 FML::Command を経由して FML::Command::User::コマンド モジュールを使うことになります。 diff --git a/fml/doc/ja/tutorial/customize/autoreply.sgml b/fml/doc/ja/tutorial/customize/autoreply.sgml index 5cce28ca..5e81e111 100644 --- a/fml/doc/ja/tutorial/customize/autoreply.sgml +++ b/fml/doc/ja/tutorial/customize/autoreply.sgml @@ -1,5 +1,5 @@ <!-- - $FML: autoreply.sgml,v 1.1 2002/07/29 09:32:57 fukachan Exp $ + $FML: autoreply.sgml,v 1.2 2003/01/05 08:00:59 fukachan Exp $ --> <sect1 id="config.autoreply"> @@ -9,28 +9,37 @@ <para> 配送プロセス( libexec/distribute )を改造して -/etc/fml/help ファイルを送り返すことを考えます。 +/some/where/help ファイルを送り返すことを考えます。 例えば help@fml.org MLを作り、このアドレスにメールを送ると -ヘルプファイルを送り返すというものです。 +(うむをいわさず:-)ヘルプファイルを送り返すというものです。 +</para> + +<para> この場合の config.cf の例はこのようになります。 <screen> -post_restrictions = permit_anyone +article_post_restrictions = permit_anyone </screen> -=cut の後に hook を書きます。 +config.cf ファイルの =cut 行以降に hook を書きます。 <screen> $distribute_run_start_hook = q{ $curproc->reply_message( { type => "text/plain; charset=iso-2022-jp", - path => "/etc/fml/help", + path => "/some/where/help", filename => "help", disposition => "help example", }); - $curproc->refuse_further_processing(); + $curproc->stop_this_process(); }; </screen> +最後の +<screen> +$curproc->stop_this_process(); +</screen> +が &fml4; の $DO_NOTHING 変数にあたりますが、&fml8; ではメソッドです。 +これで、このHOOK以降、正常の処理が無視されるようになります。 </para> </sect1> diff --git a/fml/doc/ja/tutorial/customize/case_studies.sgml b/fml/doc/ja/tutorial/customize/case_studies.sgml index 68a7194f..16fdac37 100644 --- a/fml/doc/ja/tutorial/customize/case_studies.sgml +++ b/fml/doc/ja/tutorial/customize/case_studies.sgml @@ -1,5 +1,5 @@ <!-- - $FML: case_studies.sgml,v 1.4 2003/04/15 14:51:36 fukachan Exp $ + $FML: case_studies.sgml,v 1.5 2003/11/29 07:29:12 fukachan Exp $ --> @@ -9,7 +9,12 @@ </title> <para> -ヘッダ関連では、まず Subject: にタグをつけない +以下の設定を /usr/local/etc/fml/site_default_config.cf に書き、全ML +に反映させてください。 +</para> + +<para> +ヘッダ関連では、まず Subject: にタグをつけないことにしました。 <footnote> <para> なお、この設定はデフォルトの site_default_config.cf に仕込まれているた @@ -24,20 +29,20 @@ article_header_rewrite_rules -= rewrite_article_subject_tag <para> そして、X-ML-Name: 部分の mlname にオフィス名をつける(prepend する)、 -つまり mlname から office#mlname へ変更する。 +つまり mlname から office#mlname へ変更します。 <screen> # office#$mlname -outgoing_mail_header_x_ml_name = office#$ml_name +outgoing_mail_header_x_ml_name = office#$ml_name </screen> </para> <para> -記事は誰でも投稿可能としよう。 +記事は誰でも投稿可能としましょう。 <screen> -post_restrictions = permit_anyone +article_post_restrictions = permit_anyone </screen> -そして、社内用途のMLなので、フィルタの多くは使わない。 -つぅか、使うと問題出まくりのようです;) +そして、社内用途のMLなので、フィルタの多くは使いません。 +つぅか、使うと問題だらけのようです;) <screen> use_body_filter = no use_article_body_filter = no @@ -48,9 +53,9 @@ use_article_text_plain_filter = no </para> <para> -気時のスプールだが、長期的な展望を踏まえるなら、仕事のメールは数が多い -ので、数万通単位で記事を保存すると思います。よって、記事のスプールは -subdir 形式とします。 +記事のスプールですが、長期的な展望を踏まえるなら、仕事のメールは数が多 +いので、数万通単位で記事を保存すると思います。よって、記事のスプールは +subdir 形式としました。 <screen> spool_type = subdir </screen> @@ -59,16 +64,13 @@ spool_type = subdir <para> なお、コマンドメールは使いません。 <screen> -use_command_mail_program = no +use_command_mail_function = no </screen> コマンドメールそのものを禁止するには、aliases から該当するエントリを省 くことが確実ですが、MLを作成するたびに、aliases から削除することはミ ス操作を誘い易いでしょう。また、CGI 操作の場合、CGI 操作者が aliases の操作をするのはおかしいです。そこで、コマンドメール用のプログラムが一 -度は起動しても、すぐ終るという設定にしています。 -<screen> -use_command_mail_program = no -</screen> +度は起動しても、すぐ終るという設定にしているわけです。 </para> </sect1> @@ -80,8 +82,8 @@ use_command_mail_program = no </title> <para> -以下の設定を /etc/fml/site_default_config.cf に書き、全MLに反映させ -てください。 +以下の設定を /usr/local/etc/fml/site_default_config.cf に書き、全ML +に反映させてください。 </para> <para> @@ -101,7 +103,7 @@ Subject: (SUPPORT 10000) そして、過去記事を参照させるために、コマンドメールの使用を許します。 ただし、自ドメイン(例: example.co.jp )からのリクエストに対してのみ、 コマンドメールの使用を許すこととします。 -これは、HOOK で実現可能です。 +これは、HOOK で実現します。 <screen> $command_verify_request_end_hook = q{ my $cred = $curproc->{ credential }; diff --git a/fml/doc/ja/tutorial/customize/chapter.command.sgml b/fml/doc/ja/tutorial/customize/chapter.command.sgml index 2087c28d..071dbe56 100644 --- a/fml/doc/ja/tutorial/customize/chapter.command.sgml +++ b/fml/doc/ja/tutorial/customize/chapter.command.sgml @@ -1,5 +1,5 @@ <!-- - $FML: chapter.header.sgml,v 1.1 2002/07/28 06:26:56 fukachan Exp $ + $FML: chapter.command.sgml,v 1.1 2002/09/15 01:46:30 fukachan Exp $ --> <chapter id="customize.command"> @@ -14,14 +14,19 @@ </title> <para> -elena MLの help コマンドを独自のものにしたいとしましょう。 -その場合、オリジナルの help.pm を参考に独自の -help.pm を作り、以下のパスにおいてください。 +elena MLに独自の help コマンドを作ることを考えます。 +</para> + +<para> +独自のモジュール help.pm を用意して、MLローカルのライブラリパスへお +くだけです。オリジナルの help.pm を参考にして、独自の help.pm を作り、 +以下のパスにおいてください。 <screen> /var/spool/ml/elena/local/lib/FML/Command/User/help.pm </screen> +モジュールをロードするさい、 この local/ パスのモジュールが優先されるので、 -help コマンドの応答にはこのモジュール help.pm が使われます。 +help コマンドの応答には、このモジュール help.pm が使われます。 </para> <caution> diff --git a/fml/doc/ja/tutorial/customize/chapter.config.sgml b/fml/doc/ja/tutorial/customize/chapter.config.sgml index fd670dc9..7a671d7d 100644 --- a/fml/doc/ja/tutorial/customize/chapter.config.sgml +++ b/fml/doc/ja/tutorial/customize/chapter.config.sgml @@ -1,5 +1,5 @@ <!-- - $FML: chapter.config.sgml,v 1.2 2002/07/29 12:14:17 fukachan Exp $ + $FML: chapter.config.sgml,v 1.3 2003/04/15 14:51:36 fukachan Exp $ --> <chapter id="config"> @@ -19,7 +19,7 @@ </para> <para> -このファイルは、&fml4; の site_init.ph に相当するものです。 +このファイルは、&fml4; の site_force.ph に相当するものです。 </para> </sect1> diff --git a/fml/doc/ja/tutorial/customize/chapter.header.sgml b/fml/doc/ja/tutorial/customize/chapter.header.sgml index 3d26feb4..8f232d1e 100644 --- a/fml/doc/ja/tutorial/customize/chapter.header.sgml +++ b/fml/doc/ja/tutorial/customize/chapter.header.sgml @@ -1,5 +1,5 @@ <!-- - $FML: chapter.header.sgml,v 1.2 2002/10/29 03:32:21 fukachan Exp $ + $FML: chapter.header.sgml,v 1.3 2003/04/15 14:51:36 fukachan Exp $ --> <chapter id="customize.header"> @@ -10,11 +10,10 @@ <para> ヘッダ情報は FML::Header クラスのオブジェクトに収納されています。 なお FML::Header は Mail::Header を継承しているので、 -Mail::Header で操作可能なことは何でもできます。 +Mail::Header のメソッドは何でも利用可能です。 </para> - <sect1 id="recipies.cutomize.header"> <title> レシピ’s diff --git a/fml/doc/ja/tutorial/customize/command_permit_anyone.sgml b/fml/doc/ja/tutorial/customize/command_permit_anyone.sgml index 67710462..8e7e06eb 100644 --- a/fml/doc/ja/tutorial/customize/command_permit_anyone.sgml +++ b/fml/doc/ja/tutorial/customize/command_permit_anyone.sgml @@ -1,5 +1,5 @@ <!-- - $FML: command_permit_anyone.sgml,v 1.1 2002/07/29 09:32:57 fukachan Exp $ + $FML: command_permit_anyone.sgml,v 1.2 2003/01/05 08:00:59 fukachan Exp $ --> <sect1 id="config.command.permitanyone"> @@ -8,10 +8,10 @@ </title> <para> -command_restrictions はコマンドメールの利用を許すメンバーを定義してい +command_mail_restrictions はコマンドメールの利用を許すメンバーを定義してい ます。 <screen> -command_restrictions = permit_anyone +command_mail_restrictions = permit_anyone </screen> これで、MLのメンバーか否かを問わず誰でもコマンドメールが使えます。 </para> diff --git a/fml/doc/ja/tutorial/customize/command_rejectall.sgml b/fml/doc/ja/tutorial/customize/command_rejectall.sgml index a5aa6b2c..7ed54944 100644 --- a/fml/doc/ja/tutorial/customize/command_rejectall.sgml +++ b/fml/doc/ja/tutorial/customize/command_rejectall.sgml @@ -1,5 +1,5 @@ <!-- - $FML: command_rejectall.sgml,v 1.2 2003/01/05 08:00:59 fukachan Exp $ + $FML: command_rejectall.sgml,v 1.3 2003/04/15 14:51:36 fukachan Exp $ --> <sect1 id="config.command.rejectall"> @@ -11,14 +11,16 @@ コマンドプロセスが起動しても、即効で終了するようにすることができます。 これが(aliases を編集することをのぞけば)一番確実な方法です。 <screen> -use_command_mail_program = no +use_command_mail_function = no </screen> </para> <para> プロセスが動いてしまうのですが、別解として次のやり方もありでしょう。 <screen> -command_restrictions = reject +use_command_mail_function = yes + +command_mail_restrictions = reject </screen> こう設定すると(メンバー以外の人に送り返すはずの) guide すら返送されず、 何をしても「あなたはメンバーでない」という一点張りの答を返すだけです。 diff --git a/fml/doc/ja/tutorial/customize/mailmagazine.sgml b/fml/doc/ja/tutorial/customize/mailmagazine.sgml index efa7f553..ee5225f3 100644 --- a/fml/doc/ja/tutorial/customize/mailmagazine.sgml +++ b/fml/doc/ja/tutorial/customize/mailmagazine.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: mailmagazine.sgml,v 1.3 2003/07/27 17:45:30 fukachan Exp $ --> <sect1 id="config.mailmagazine"> @@ -39,4 +39,14 @@ members というファイルに追加されていきますが、 気にはなるかも知れませんが… </para> +<para> +別解としては、逆に +<screen> +primary_member_map = $tmp_dir/members-dummy +</screen> +などとメンバーリストの新規分追加先を変更して闇に葬り、 +membersには投稿可能なアドレスだけを書くというやり方もあります。 +このほうが &fml4; 風で分かりやすいでしょう。 +</para> + </sect1> diff --git a/fml/doc/ja/tutorial/customize/ml.hier.ml b/fml/doc/ja/tutorial/customize/ml.hier.ml index 50be05e9..ed07f722 100644 --- a/fml/doc/ja/tutorial/customize/ml.hier.ml +++ b/fml/doc/ja/tutorial/customize/ml.hier.ml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: ml.hier.ml,v 1.1 2002/07/29 12:16:19 fukachan Exp $ 階層化されたML: $member_maps $recipient_maps をよろしく書く @@ -49,4 +49,14 @@ post_restrictions = permit_anyone と設定してしまうのもアリでしょう。 </para> +<para> +ここではファイルで管理する例を取り上げています。 +これは簡単で、すぐに実行できるというのがよいところです。 +</para> + +<para> +しかしながら、MySQL なりで組織図とメール配送のリストを管理するほうが現 +代的ではあるでしょう。準備も保守も、それなりに必要となりますが +</para> + </sect1> diff --git a/fml/doc/ja/tutorial/customize/post_permit_anyone.sgml b/fml/doc/ja/tutorial/customize/post_permit_anyone.sgml index 7413f8d0..9992e3e4 100644 --- a/fml/doc/ja/tutorial/customize/post_permit_anyone.sgml +++ b/fml/doc/ja/tutorial/customize/post_permit_anyone.sgml @@ -1,5 +1,5 @@ <!-- - $FML: post_permit_anyone.sgml,v 1.3 2003/04/15 14:51:37 fukachan Exp $ + $FML: post_permit_anyone.sgml,v 1.4 2003/11/30 10:01:13 fukachan Exp $ --> <sect1 id="config.post.permitanyone"> @@ -9,9 +9,9 @@ <para> <screen> -post_restrictions = permit_anyone +article_post_restrictions = permit_anyone </screen> -post_restrictions は記事の投稿を許すメンバーを定義しています。 +article_post_restrictions は記事の投稿を許すメンバーを定義しています。 これを permit_anyone とすると、だれでも投稿可能になります。 </para> @@ -22,10 +22,19 @@ reject_system_special_accounts という root などを弾くルールが別途あります。 </para> <para> -ちなみに post_restrictions のデフォルトは &fml4; 互換のため、 +&fml4; のように、rootなどシステムの特別なアカウントは弾き、それ以外の +ユーザからのメールは受け付けるという場合、次のようにします。 +<screen> +article_post_restrictions = reject_system_special_accounts + permit_anyone +</screen> +</para> + +<para> +ちなみに article_post_restrictions のデフォルトは &fml4; 互換のため、 次のようになっています。 <screen> -post_restrictions = reject_system_special_accounts +article_post_restrictions = reject_system_special_accounts permit_member_maps reject </screen> diff --git a/fml/doc/ja/tutorial/customize/recipe.filter.notice.sgml b/fml/doc/ja/tutorial/customize/recipe.filter.notice.sgml index 444df884..10ccee02 100644 --- a/fml/doc/ja/tutorial/customize/recipe.filter.notice.sgml +++ b/fml/doc/ja/tutorial/customize/recipe.filter.notice.sgml @@ -1,5 +1,5 @@ <!-- - $FML: recipe.filter.notice.sgml,v 1.1 2003/04/13 03:29:01 fukachan Exp $ + $FML: recipe.filter.notice.sgml,v 1.2 2003/04/15 14:51:37 fukachan Exp $ --> @@ -19,8 +19,8 @@ use_article_filter_reject_notice = yes article_filter_reject_notice_recipient = maintainer sender </screen> -となっている。 -つまり、エラーメールを返し、返す先はMLの管理者だ。 +となっています。 +つまり、エラーメールを返し、返す先はMLの管理者です。 </para> @@ -29,7 +29,7 @@ article_filter_reject_notice_recipient = maintainer sender <screen> article_filter_reject_notice_recipient = sender </screen> -とする。 +としてください。 </para> @@ -38,7 +38,7 @@ article_filter_reject_notice_recipient = sender <screen> article_filter_reject_notice_recipient = maintainer sender </screen> -とする。 +としてください。 </para> @@ -47,6 +47,7 @@ article_filter_reject_notice_recipient = maintainer sender <screen> use_article_filter_reject_notice = no </screen> +としてください。 </para> </answer> diff --git a/fml/doc/ja/tutorial/customize/recipe.header.tag.lowercase.sgml b/fml/doc/ja/tutorial/customize/recipe.header.tag.lowercase.sgml index d0265f65..09270e62 100644 --- a/fml/doc/ja/tutorial/customize/recipe.header.tag.lowercase.sgml +++ b/fml/doc/ja/tutorial/customize/recipe.header.tag.lowercase.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: recipe.header.tag.lowercase.sgml,v 1.1 2002/10/29 03:32:21 fukachan Exp $ --> @@ -19,7 +19,7 @@ Unix 上では、たいてい小文字を使うので、ML名前も小文字でしょう。 <screen> article_subject_tag = [\L$ml_name\E:%05d] </screen> -(注意: 2002/10/29 以降の snapshot を使ってください)。 +(注意: この機能を使う場合には 2002/10/29 以降の snapshot を使ってください)。 </para> </answer> diff --git a/fml/doc/ja/tutorial/customize/recipe.header.tag.uppercase.sgml b/fml/doc/ja/tutorial/customize/recipe.header.tag.uppercase.sgml index 97c2c47f..8117d43b 100644 --- a/fml/doc/ja/tutorial/customize/recipe.header.tag.uppercase.sgml +++ b/fml/doc/ja/tutorial/customize/recipe.header.tag.uppercase.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: recipe.header.tag.uppercase.sgml,v 1.1 2002/10/29 03:32:21 fukachan Exp $ --> @@ -16,7 +16,7 @@ <screen> article_subject_tag = [\U$ml_name\E:%05d] </screen> -(注意: 2002/10/29 以降の snapshot を使ってください)。 +(注意: この機能を使う場合には 2002/10/29 以降の snapshot を使ってください)。 </para> </answer> diff --git a/fml/doc/ja/tutorial/delivery/queue.sgml b/fml/doc/ja/tutorial/delivery/queue.sgml index 1c714ebc..8b645a2a 100644 --- a/fml/doc/ja/tutorial/delivery/queue.sgml +++ b/fml/doc/ja/tutorial/delivery/queue.sgml @@ -1,5 +1,5 @@ <!-- - $FML: queue.sgml,v 1.2 2003/04/13 04:36:11 fukachan Exp $ + $FML: queue.sgml,v 1.3 2003/04/15 14:51:37 fukachan Exp $ --> <sect1 id="message.reply"> @@ -37,7 +37,7 @@ fml にリクエストをした人です。 <screen> $curproc->reply_message( { type => "text/plain; charset=iso-2022-jp", - path => "/etc/fml/main.cf", + path => "/usr/local/etc/fml/main.cf", filename => "main.cf", disposition => "main.cf example", }); diff --git a/fml/doc/ja/tutorial/devel/create_program.sgml b/fml/doc/ja/tutorial/devel/create_program.sgml index c06a67b0..242b1511 100644 --- a/fml/doc/ja/tutorial/devel/create_program.sgml +++ b/fml/doc/ja/tutorial/devel/create_program.sgml @@ -1,5 +1,5 @@ <!-- - $FML: create_program.sgml,v 1.6 2003/04/15 14:51:38 fukachan Exp $ + $FML: create_program.sgml,v 1.7 2003/12/23 06:20:36 fukachan Exp $ --> <chapter id="program.create"> @@ -65,19 +65,13 @@ etc/command_line_options </para> <para> -この 2 つの準備だけで、新しいプログラムの実行が可能になります。 +これら3つを準備すれば、新しいプログラムの実行の準備が出来ました。 </para> <para> -また、インストーラに symlink (後述)を実行してもらうために、 -etc/install.cf.in のbin_programs か libexec_programs にプログラム名を -定義して下さい。テスト段階では手動で symlink を行なってもかまいません。 -</para> - -<para> -呼びたい名前のファイルを loader と link もしくは symlink することで実 -行が可能になります。例えば、標準のインストールでは、次のようになってい -ます。 +最後に、呼びたい名前のファイルを loader と link もしくは symlink する +ことで実行が可能になります。例えば、標準のインストールでは、次のように +なっています。 <screen> % ls -l /usr/local/libexec/fml lrwxr-xr-x 1 root wheel 6 Apr 14 18:25 command@ -> loader @@ -100,6 +94,14 @@ lrwxr-xr-x 1 root wheel 6 Apr 14 18:25 mead@ -> loader </screen> </para> +<para> +デフォルトのプログラムについては、インストーラがこれらの symlink 処理 +をしてくれています。インストーラに symlink (後述)を実行してもらう必要 +があるなら、etc/install.cf.in のbin_programs か libexec_programs にプ +ログラム名を定義して下さい。テスト段階では手動で symlink を行なってか +まいません。 +</para> + </sect1> @@ -113,6 +115,14 @@ lrwxr-xr-x 1 root wheel 6 Apr 14 18:25 mead@ -> loader --> <para> +内部構造の詳細は +<link linkend="cgi.internal"> +<xref linkend="cgi.internal"> +</link> +を参照してみて下さい。 +</para> + +<para> CGI のプログラムは FML::CGI::○○○ というモジュールです。 diff --git a/fml/doc/ja/tutorial/include/terms.sgml b/fml/doc/ja/tutorial/include/terms.sgml index d97926be..e9856f43 100644 --- a/fml/doc/ja/tutorial/include/terms.sgml +++ b/fml/doc/ja/tutorial/include/terms.sgml @@ -1,10 +1,21 @@ <!-- - $FML: terms.sgml,v 1.2 2002/04/01 23:41:02 fukachan Exp $ + $FML: terms.sgml,v 1.3 2002/07/02 10:39:34 fukachan Exp $ --> <sect1 id="terms"> + <title> + 本チュートリアル中における用語について + </title> + +<para> +ソースを読む際などに役に立つ、 +より細かな関数名および変数名関連についての用語集が別途 +<link linkend="glossary"> +<xref linkend="glossary"> +</link> +にあります。そちらも参照して下さい。 +</para> -<title> 本チュートリアル中における用語について </title> <variablelist> @@ -23,12 +34,82 @@ </varlistentry> <varlistentry> + <term> ~ </term> + <listitem> + <para> ユーザのホームディレクトリ </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> CUI </term> + <listitem> + <para> + コマンドラインで使うツールの、つまり makefml と fml のこと + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> fml </term> + <listitem> + <para> + fml ソフトウエアの総称、一般論を話している場合には使うことがある + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> fml (コマンド) </term> + <listitem> + <para> + &fml8; にある fml というコマンドのこと。 + 引数の順番が異なる makefml コマンド同等品。 + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> ユーザ fml </term> + <listitem> + <para> + fml という名のユーザ。&fml8; を動かすユーザアカウント。 + </para> + </listitem> + </varlistentry> + + <varlistentry> <term> fml4 </term> <listitem> <para> &fml4; シリーズのこと </para> </listitem> </varlistentry> + <varlistentry> + <term> fml8 </term> + <listitem> + <para> &fml8; シリーズのこと </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> GUI </term> + <listitem> + <para> + CGI インターフェイスのこと。 + </para> + </listitem> + </varlistentry> + + <varlistentry> + <term> makefml (コマンド) </term> + <listitem> + <para> + &fml4; および &fml8; にある設定支援コマンドのこと。 + fml が走っているメールサーバにログインして使うもの。 + </para> + </listitem> + </varlistentry> + </variablelist> </sect1> diff --git a/fml/doc/ja/tutorial/install/download.sgml b/fml/doc/ja/tutorial/install/download.sgml index 4878b42b..1436713a 100644 --- a/fml/doc/ja/tutorial/install/download.sgml +++ b/fml/doc/ja/tutorial/install/download.sgml @@ -1,5 +1,5 @@ <!-- - $FML: download.sgml,v 1.1 2002/07/04 10:58:59 fukachan Exp $ + $FML: download.sgml,v 1.2 2002/07/06 14:55:17 fukachan Exp $ --> <chapter id="download"> @@ -16,8 +16,8 @@ <para> fml-devel のソースは - <ulink url="ftp://ftp.fml.org/pub/fml-devel/"> - ftp://ftp.fml.org/pub/fml-devel/ + <ulink url="ftp://ftp.fml.org/pub/fml8/"> + ftp://ftp.fml.org/pub/fml8/ </ulink> から、 ftp で入手できます。 </para> @@ -30,13 +30,14 @@ fml-devel のソースは <para> なお daily snapshot もあります。 +全自動で作られているので、特定の日のバージョンはうまく動かないかも知れ +ません。 +</para> +<para> <ulink url="ftp://ftp.fml.org/pub/fml/daily-snapshots/fml-devel/source/"> ftp://ftp.fml.org/pub/fml/daily-snapshots/fml-devel/source/ </ulink> - -全自動で作られているので、特定の日のバージョンはうまく動かないかも知れ -ません。 </para> </sect1> diff --git a/fml/doc/ja/tutorial/install/fml_on_unix.sgml b/fml/doc/ja/tutorial/install/fml_on_unix.sgml index 9c1e0a4e..d8c0d911 100644 --- a/fml/doc/ja/tutorial/install/fml_on_unix.sgml +++ b/fml/doc/ja/tutorial/install/fml_on_unix.sgml @@ -1,5 +1,5 @@ <!-- - $FML: fml_on_unix.sgml,v 1.5 2003/04/15 14:51:39 fukachan Exp $ + $FML: fml_on_unix.sgml,v 1.6 2003/11/24 04:44:57 fukachan Exp $ --> <chapter id="install.fml.unix"> @@ -57,7 +57,7 @@ make install を実行すると、configure が生成する etc/fml/install.cf を ユーザ名や基本的なディレクトリ構成などは configure の引数で変更して下さい。 変更できる変数は以下のものです。configure --help で表示されます。 fml では各ディレクトリにさらに /fml といった suffix をつけます。 -変更できるのはその直前の prefix 部分までです。 +変更できるのは、その直前の prefix 部分までです。 <screen> 変数 configure のデフォルト値 fml の利用するディレクトリ -------------------------------------------------------- @@ -239,8 +239,8 @@ Now you must run "make install". <entry> /usr/local/etc/fml </entry> <entry> 基本設定ファイルを置く場所。 - ( &fml4; の /usr/local/fml/.fml や default_config.ph 相当) - + &fml4; の /usr/local/fml/.fml や default_config.ph 相当を置く場所。 + /usr/local/etc/fml/main.cf では、 バージョンやライブラリの場所(ディレクトリ)などを指定する。 </entry> </row> @@ -268,7 +268,7 @@ Now you must run "make install". <entry> メッセージなどのテンプレートを置く( &fml4; の /usr/local/fml/messages/ 相当)。 - 言語依存です。 + この下に言語依存のサブディレクトリが作られます。 </entry> </row> @@ -286,6 +286,12 @@ Now you must run "make install". なお、ドメインごとに別の prefix を用意して下さい。 たとえば fml.org 用は /var/spool/ml で、 nuinui.net 用には /var/spool/nuinui.net などのように。 + + また、バーチャルドメインについて、くわしくは + <link linkend="virtualdomain"> + <xref linkend="virtualdomain"> + </link> + を参照して下さい。 </entry> </row> </tbody> @@ -333,14 +339,15 @@ make install はユーザ root で実行して下さい。 <para> 必要なら /usr/local/etc/fml/main.cf を編集して下さい。 -configure があなたの環境に合わせて main.cf を書換えしているはずなので -configure のオプション指定が正しければ、 -編集の必要はまずないです。 + +configure が、あなたの環境に合わせて main.cf を書換えしているはずなの +でconfigure のオプション指定が正しければ、編集の必要は、まずないです。 </para> <para> -mani.cf は大枠の最も基本的な設定です。より細かな設定は fml の動作の指 -定などは site_default_config.cf の役割です。 +mani.cf は大枠の最も基本的な設定です。より細かな設定、たとえばサイト共 +通の fml の動作指定などは site_default_config.cf の役割です。各ML固 +有の設定は、各MLのホームディレクトリにあるconfig.cfファイルです。 </para> <!-- main.cf の見本 --> @@ -359,7 +366,7 @@ mani.cf は大枠の最も基本的な設定です。より細かな設定は fml の動作の指 /usr/local/etc/fml/site_default_config.cf <footnote> <para> -これは &fml4; の site_init.ph に相当するものです。 +これは &fml4; の site_force.ph に相当するものです。 </para> </footnote> です。必要に応じて編集してください。 @@ -371,10 +378,10 @@ mani.cf は大枠の最も基本的な設定です。より細かな設定は fml の動作の指 </para> <para> -デフォルトでは見本として:) +デフォルトでは&fml4;兼、見本として:) subject のタグをつけない設定とフィルタ関連の設定だけが入っています。 <screen> -# $FML: fml_on_unix.sgml,v 1.5 2003/04/15 14:51:39 fukachan Exp $ +# $FML: fml_on_unix.sgml,v 1.6 2003/11/24 04:44:57 fukachan Exp $ # # site default_config.cf EXAMPLE # @@ -421,16 +428,25 @@ use_mime_component_filter = yes <para> デフォルトではすべてのフィルタが有効です。 +&fml4; の推奨設定に相当しています。 +</para> + +<para> +まぁフィルタのかけすぎという見解もあるかもしれませんが、 +デフォルトは厳しい方にしてあります。 </para> <para> -特に mime component filter が問題です。 -mime component filter が有効なので、デフォルトでは -MLへの投稿が許されるのは text/plain のメールのみです。 +フィルタがかかっているのはよいのですが、mime component filter のデフォ +ルトをどうすれば良いのかは基準が曖昧です。デフォルトではMLへの投稿が +許されるのは text/plain のメールのみとしてあります。これで text/html +な惚けメールも、添付ファイルで送られてくるウィルスもデフォルトでは通り +ません。 </para> <para> -mime component filter を無効にするには +(すべてのMLで) + mime component filter を無効にするには site_default_config.cf で <screen> use_mime_component_filter = no @@ -475,8 +491,8 @@ newdomain コマンドについては </para> <para> -一方、site_default_config.cf はドメインに関わらず適用されることに注意 -してください。 +site_default_config.cf はドメインに関わらず適用されることに注意してく +ださい。バーチャルドメインにも適用されます。 </para> </warning> diff --git a/fml/doc/ja/tutorial/install/postfix.sgml b/fml/doc/ja/tutorial/install/postfix.sgml index 64aaecd3..57f92616 100644 --- a/fml/doc/ja/tutorial/install/postfix.sgml +++ b/fml/doc/ja/tutorial/install/postfix.sgml @@ -1,5 +1,5 @@ <!-- - $FML: postfix.sgml,v 1.2 2002/07/06 14:55:17 fukachan Exp $ + $FML: postfix.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ --> <sect1 id="install.postfix"> @@ -63,14 +63,31 @@ virtual_maps = hash:/var/spool/nuinui.net/etc/postfix/virtual <warning> <para> +&fml8; が作る virtual_maps のファイルは Postfix スタイルの +virtual_maps です。最近の Postfix には sendmail スタイルというのもあり +ますが、ここでは昔からある postfix スタイルを使っているということに注 +意して下さい。 +</para> + +<para> mydestination にデフォルトのドメイン(おそらく $mydomain )がちゃんと追 加されていることを確認して下さい。しかし、バーチャルドメイン(ここでは nuinui.net)は mydestination に追加する必要はありません。注意して下さい。 </para> <para> -また、バーチャルドメインが増えるたびに alias_maps には新しいドメインの -aliaes を追加する必要がありますが、virtual_maps の変更は不要です。 +バーチャルドメインが増えるたびに alias_maps には新しいドメインの +aliaes を、virtual_maps にも virtual ファイルを追加する必要があります。 +</para> + +<para> +ちなみに、最近の postfix では virtual_alias_maps というのが正しい変数 +名ですが、デフォルト(/etc/postfix/main.cf.default)で +<screen> +virtual_alias_maps = $virtual_maps +</screen> +となっているため、 +virtual_maps でも virtual_alias_maps でもかまいません。 </para> </warning> diff --git a/fml/doc/ja/tutorial/install/qmail.sgml b/fml/doc/ja/tutorial/install/qmail.sgml index 467a3d18..340101d9 100644 --- a/fml/doc/ja/tutorial/install/qmail.sgml +++ b/fml/doc/ja/tutorial/install/qmail.sgml @@ -1,5 +1,5 @@ <!-- - $FML: qmail.sgml,v 1.2 2002/07/06 14:55:17 fukachan Exp $ + $FML: qmail.sgml,v 1.3 2003/04/15 14:51:39 fukachan Exp $ --> <sect1 id="install.qmail"> @@ -31,13 +31,19 @@ makefml newml を実行するだけでMLが自動的に有効になるように、あらかじ </title> <para> +デフォルトのドメイン(例: fml.org)は使えないと思うのですが、嘘? +ml.fml.org などとML専用のサブドメインを作って使うのが良いと思ってい +ます。 +</para> + +<para> <screen> /var/qmail/control/virtualdomains </screen> に、あらかじめ次のような設定を仕込んでおけば、 makefml newml を実行するだけで自動的にMLが有効になります。 <screen> -fml.org:fml-fml.org +ml.fml.org:fml-ml.fml.org </screen> </para> diff --git a/fml/doc/ja/tutorial/install/upgrade.sgml b/fml/doc/ja/tutorial/install/upgrade.sgml index 3c82e2c9..dcaf82b2 100644 --- a/fml/doc/ja/tutorial/install/upgrade.sgml +++ b/fml/doc/ja/tutorial/install/upgrade.sgml @@ -1,5 +1,5 @@ <!-- - $FML: upgrade.sgml,v 1.4 2003/07/26 09:06:37 fukachan Exp $ + $FML: upgrade.sgml,v 1.5 2004/03/18 05:42:20 fukachan Exp $ --> <chapter id="xxxgrade"> @@ -15,7 +15,11 @@ </para> <para> -fml4 から fml8 へのアップグレードは、別の章で説明します。 +fml4 から fml8 へのアップグレードは、 +<link linkend="mergeml.fml4to8"> +<xref linkend="mergeml.fml4to8"> +</link> +で説明します。 </para> </warning> @@ -33,7 +37,7 @@ fml4 から fml8 へのアップグレードは、別の章で説明します。 </para> <para> -そして、インストール後、/etc/fml/main.cf の fml_version 行を +そして、インストール後、/usr/local/etc/fml/main.cf の fml_version 行を 今インストールしたバージョンに変更して下さい。 ファイルをセーブした瞬間から新しい fml に切り替わります (注: エディタで編集中は古い内容)。 @@ -48,9 +52,8 @@ fml4 から fml8 へのアップグレードは、別の章で説明します。 <para> ソースのインストールし直しなどは必要ありません。 -/etc/fml/main.cf の編集だけです。 -/etc/fml/main.cf の fml_verison をアップグレード前のものに -戻して下さい。 +/usr/local/etc/fml/main.cf の編集だけです。/usr/local/etc/fml/main.cf +の fml_verison をアップグレード前のものに戻して下さい。 </para> <para> diff --git a/fml/doc/ja/tutorial/internals/bootloader.sgml b/fml/doc/ja/tutorial/internals/bootloader.sgml index 8f786e4f..bb2e1140 100644 --- a/fml/doc/ja/tutorial/internals/bootloader.sgml +++ b/fml/doc/ja/tutorial/internals/bootloader.sgml @@ -1,5 +1,5 @@ <!-- - $FML: bootloader.sgml,v 1.9 2003/03/09 08:29:10 fukachan Exp $ + $FML: bootloader.sgml,v 1.10 2003/04/15 14:51:40 fukachan Exp $ --> <chapter id="bootloader"> @@ -108,7 +108,7 @@ FML::Process::Mead >-| | <para> libexec/loader (wrapper) Bootstrap() を実行する。 - fml.pl などはこの loader へのシンボリックリンクです。 + libexec/distribute などは、皆この loader へのシンボリックリンクです。 /usr/local/libexec/fml/ を参照して下さい。 </para> </listitem> @@ -191,7 +191,8 @@ $process->finish($args); </para> <para> -以下、2、3の走り書き/おぼえがきを残しておきます。 +以下、内部構造について、2、3の走り書き/おぼえがきを残しておきます。 +一応、こういった構造を鑑みて、prepare() のあたりに持ってきているわけです。 <screen> main::Bootstrap() diff --git a/fml/doc/ja/tutorial/internals/config.cf.sgml b/fml/doc/ja/tutorial/internals/config.cf.sgml index cbf9364f..67d2460c 100644 --- a/fml/doc/ja/tutorial/internals/config.cf.sgml +++ b/fml/doc/ja/tutorial/internals/config.cf.sgml @@ -1,8 +1,8 @@ <!-- - $FML: config.cf.sgml,v 1.10 2003/06/15 05:23:13 fukachan Exp $ + $FML: config.cf.sgml,v 1.11 2003/06/20 22:23:14 fukachan Exp $ --> -<chapter> +<chapter id="internal.config.cf"> <title> 設定ファイル config.cf </title> @@ -18,9 +18,9 @@ </para> <para> -そのために &fml4; では各MLのホームディレクトリ $DIR に config.ph と -いうファイルがあります。これは .ph という名前でわかる通り perl script -です。 +そのために &fml4; では各MLのホームディレクトリ $DIR (例: +/var/spool/ml/elena)に config.ph というファイルがあります。これは .ph +という名前でわかる通り perl script です。 </para> <para> @@ -68,12 +68,14 @@ cf というファイルと config.ph という <!-- ======================================= --> <sect1 id="config.cf.format"> - <title> config.cf のフォーマット </title> + <title> + config.cf のフォーマット + </title> <para> config.cf のフォーマットは <link linkend="main.cf"> - /etc/fml/main.cf + /usr/local/etc/fml/main.cf </link> と同様です。 <screen> @@ -124,7 +126,7 @@ b = 値4/値2/値3 <!-- ======================================= --> -<sect1> +<sect1 id="config.cf.format.extension"> <title> postfix style のさらなる拡張 </title> @@ -146,7 +148,7 @@ x -= b <screen> x = a c d </screen> -などとなる。 +と解釈されます。 </para> <para> @@ -159,7 +161,7 @@ x += e <screen> x = a b c d e </screen> -などとなる。 +となります。 </para> </sect1> @@ -167,7 +169,9 @@ x = a b c d e <!-- ======================================= --> <sect1 id="config.cf.overload"> - <title> config.cf の多重読み込み(変数定義の上書き) </title> + <title> + config.cf の多重読み込み(変数定義の上書き) + </title> <para> 複数の config.cf を読み込み、定義の上書きを行なうことができます。 @@ -179,7 +183,7 @@ x = a b c d e 『サイト固有の定義』、 『ドメイン固有の定義』 などを別のファイルに分離することができます。 -デフォルトではいくつかの .cf ファイルに分離されています。 +デフォルトでは、いくつかの .cf ファイルに分離されています。 </para> <para> @@ -192,7 +196,9 @@ fml は起動時にそれらのファイルを順番に読みこみ、 <!-- ======================================= --> <sect1> - <title> 展開後に変数を代入すると? </title> + <title> + 展開後に変数を代入すると? + </title> <para> $ をふくむ変数の値の代入が行なわれると、 @@ -219,7 +225,9 @@ $config->{ another_key } <sect2> - <title> 内部構造: 変数展開 </title> + <title> + 内部構造: 変数展開 + </title> <para> 内部構造の話をすると、 diff --git a/fml/doc/ja/tutorial/internals/design.sgml b/fml/doc/ja/tutorial/internals/design.sgml index e2bb716e..0f7fa609 100644 --- a/fml/doc/ja/tutorial/internals/design.sgml +++ b/fml/doc/ja/tutorial/internals/design.sgml @@ -1,10 +1,10 @@ <!-- - $FML: design.sgml,v 1.8 2002/07/06 14:55:18 fukachan Exp $ + $FML: design.sgml,v 1.9 2003/04/15 14:51:40 fukachan Exp $ --> <chapter id="design"> <title> - 原案: &fmldevel; (仮名) のデザインコンセプト + 原案: &fml8; (仮名) のデザインコンセプト </title> @@ -22,7 +22,7 @@ <ulink url="http://www.fml.org/software/fml-devel/"> fml-devel </ulink> -とも呼ばれている &fmldevel; プロジェクトは、 +とも呼ばれている &fml8; プロジェクトは、 &fml4; の再構想(refactoring)とその実装(例)の構築 を行なっています。 </PARA> @@ -51,7 +51,7 @@ http://www.fml.org/software/fml-devel/ </PARA> <para> -ものによっては &fmldevel; 用に作られたモジュールを &fml4; へ輸入/輸出 +ものによっては &fml8; 用に作られたモジュールを &fml4; へ輸入/輸出 することも検討しています。IPv6 はすでに輸出されました。たとえば 4.0 で も独立性の高い mead (エラーメール解析プログラム)などはその良い例だろう し、新機能を提供するモジュールなども再輸入(輸出)可能なものは順次マージ @@ -59,12 +59,12 @@ http://www.fml.org/software/fml-devel/ </PARA> <para> -これらのマージおよび 4.0 自体のコードの保守をしつつ 4.0 および &fmldevel; は +これらのマージおよび 4.0 自体のコードの保守をしつつ 4.0 および &fml8; は 並行開発されていく予定です。 そのため 4.0 系は stable に近い current という位置付けになります。 そして 4.0 の bug fix は 4.0.x (4.0.1 4.0.2 …)としてまとめられリリー スれていく予定です。 -逆に &fmldevel; は本当の開発用のコード( fml-current )ということになります。 +逆に &fml8; は本当の開発用のコード( fml-current )ということになります。 </PARA> </sect1> @@ -87,7 +87,7 @@ http://www.fml.org/software/fml-devel/ <listitem> <para> - 全部 perl module 形式 (要 &fmldevel;04 以降) + 全部 perl module 形式 (要 perl 5.00504 以降) </para> </listitem> @@ -161,7 +161,7 @@ http://www.fml.org/software/fml-devel/ <listitem> <para> - SQL (プロトタイプは実装済み) + SQL (MySQL は実装済み) </para> </listitem> @@ -219,7 +219,7 @@ http://www.fml.org/software/fml-devel/ <entry> </entry> <entry> イメージ/モティーフ</entry> <entry> - &fml4; から &fmldevel; へは、 + &fml4; から &fml8; へは、 sendmail から postfix への移行のようなイメージで。 最低限の config.ph コンバータは用意する。 </entry> @@ -302,7 +302,7 @@ http://www.fml.org/software/fml-devel/ </row> <row> - <entry> 手づかず </entry> + <entry> done. (でも lmtp を実装してない;-) </entry> <entry> queue manager </entry> <entry> 再送処理のため (e.g. smtpfeed ) @@ -311,7 +311,7 @@ http://www.fml.org/software/fml-devel/ <row> - <entry> may be </entry> + <entry> </entry> <entry> tools </entry> <entry> BSD make を使わない。 @@ -356,7 +356,7 @@ http://www.fml.org/software/fml-devel/ <sect1 id="design.releng"> <TITLE> - リリース・エンジニアリングについて + リリース・エンジニアリングについて (目標!) </TITLE> <para> diff --git a/fml/doc/ja/tutorial/internals/directory.sgml b/fml/doc/ja/tutorial/internals/directory.sgml index 26394b7c..e17eb0e4 100644 --- a/fml/doc/ja/tutorial/internals/directory.sgml +++ b/fml/doc/ja/tutorial/internals/directory.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: directory.sgml,v 1.3 2003/04/15 14:51:40 fukachan Exp $ --> <chapter id="directory"> @@ -14,6 +14,8 @@ </title> <para> +たとえば、HTML化された記事は、こんな階層に置かれていますが、どうでしょ +う? <screen> 200201/msg○○.html </screen> diff --git a/fml/doc/ja/tutorial/internals/errormail.sgml b/fml/doc/ja/tutorial/internals/errormail.sgml index 8356a7f3..b4cf9f05 100644 --- a/fml/doc/ja/tutorial/internals/errormail.sgml +++ b/fml/doc/ja/tutorial/internals/errormail.sgml @@ -1,5 +1,5 @@ <!-- - $FML: errormail.sgml,v 1.2 2003/11/24 14:37:34 fukachan Exp $ + $FML: errormail.sgml,v 1.3 2004/02/24 14:26:58 fukachan Exp $ --> @@ -13,8 +13,8 @@ libexec/error は &fml4; の libexec/mead に相当するものです。 </para> <para> -$use_error_analyzer_program を yes にすると、エラー解析機能が有効にな -ります。ちなみに、デフォルトで $use_error_analyzer_program は yes つま +$use_error_mail_analyzer_function を yes にすると、エラー解析機能が有効にな +ります。ちなみに、デフォルトで $use_error_mail_analyzer_function は yes つま りエラー解析機能は有効になっています。このへんは &fml4; と異なります。 &fml8; では、&fml4; でよく使う機能は始めから有効になっています。 </para> diff --git a/fml/doc/ja/tutorial/internals/filter.sgml b/fml/doc/ja/tutorial/internals/filter.sgml index 968eef5c..87b88b44 100644 --- a/fml/doc/ja/tutorial/internals/filter.sgml +++ b/fml/doc/ja/tutorial/internals/filter.sgml @@ -1,5 +1,5 @@ <!-- - $FML: filter.sgml,v 1.4 2003/06/19 16:24:53 fukachan Exp $ + $FML: filter.sgml,v 1.5 2003/06/20 22:03:13 fukachan Exp $ --> <chapter id="internals.filter"> @@ -14,7 +14,7 @@ </title> <para> -フィルタには大きく分けて3種類あります。それは、 +コンテンツを検査するフィルタには大きく分けて3種類あります。それは、 ヘッダ、 メール本文、 MIME 構造を元にしたフィルタ(mime component filter)の3つです。 @@ -44,6 +44,12 @@ text/plain に対してより厳しいシンタックスチェックを行なうフィルタも ください。 </para> +<!-- XXX-TODO トラフィックベースのフィルタ --> +<para> +また、これら以外にトラフィックベースのフィルタがあります(まだかなりの +部分が未実装なので省略します)。 +</para> + </sect1> @@ -53,7 +59,7 @@ text/plain に対してより厳しいシンタックスチェックを行なうフィルタも </title> <para> -配送やコマンドメールといった機能別に、「フィルタを使うか使わないか?」 +配送やコマンドメールといった機能別に「フィルタを使うか使わないか?」 「使うフィルタルールは?」などが定義されています。 </para> @@ -86,7 +92,8 @@ use_機能A = yes </para> <para> -parse() する時にサイズもはかっているので、このフィルタの実装は簡単だ。 +余談: + parse() する時にサイズもはかっているので、このフィルタの実装は簡単です:) </para> &var.filter.size; diff --git a/fml/doc/ja/tutorial/internals/language.sgml b/fml/doc/ja/tutorial/internals/language.sgml index 00f7a3be..fe24f7f9 100644 --- a/fml/doc/ja/tutorial/internals/language.sgml +++ b/fml/doc/ja/tutorial/internals/language.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: language.sgml,v 1.1 2004/02/26 10:36:05 fukachan Exp $ --> @@ -15,9 +15,10 @@ </title> <para> -一番単純なモデルは、「このMLは日本人用」と設定してあるならメッセージ -は常に日本語で返すというものです。 -ML作成時に何言語用かを指定する必要があります。 +一番単純なモデルは「このMLは日本人用と設定しているなら、メッセージは +常に日本語で返す」というものです。このモデルでは、ML作成時に何言語用 +かを指定する必要があります。また、間違って(日本語が読めない人から)送ら +れてきたメールに対しても、日本語でエラーを返します。 </para> <para> @@ -31,7 +32,8 @@ たとえば、Accept-Language: ja などとしてある場合はja が優先だと分かり ます。しかしながら、そういったものがなく、かつ、「日本人が help という メールを送ってきた」場合、返事を us-ascii なのか iso-2022-jp で返すべ -きなのか?が、プログラムには良く分かりません。 +きなのか?が、プログラムには良く分かりません。たとえば、こんなメールで +は、どう判断するのが正しいでしょう? <screen> 例: @@ -54,8 +56,8 @@ charsetを素直に考えると、英語で返すべきですが、これは本文が英語だけな <para> 逆に、Accept-Lanaguage: が指定されていれば、それを尊重するべきです。英 語のML(language_preference_order = en)の場合でも、Accept-Lanaguage: -ja なら(できるだけ)日本語で返事をするべきでしょう。 -標準のメッセージであれば、このサポートは可能なので、優先するべきでしょう。 +ja なら(できるだけ)日本語で返事をするべきでしょう。&fml8; 標準のメッ +セージであれば、この動作が可能です。なので、そうするべきと考えます。 </para> </sect1> @@ -63,16 +65,16 @@ ja なら(できるだけ)日本語で返事をするべきでしょう。 <sect1 id="language.preference.ml.ja"> <title> - 日本語のML + 日本語優先のML </title> <para> language_preference_order という変数があります。 -これが、次のように指定されています。 +日本語がデフォルトのMLでは、これが、次のように指定されています。 <screen> language_preference_order = ja en </screen> -このヒントを使い、以下のように処理をするようにしています。 +このヒントを使い、以下のような処理をするようにしています。 </para> @@ -142,7 +144,7 @@ language_preference_order = ja en <sect1 id="language.preference.ml.en"> <title> - 英語のML + 英語優先のML </title> <para> diff --git a/fml/doc/ja/tutorial/internals/main.cf.sgml b/fml/doc/ja/tutorial/internals/main.cf.sgml index 57d8af66..19cedf24 100644 --- a/fml/doc/ja/tutorial/internals/main.cf.sgml +++ b/fml/doc/ja/tutorial/internals/main.cf.sgml @@ -1,17 +1,17 @@ <!-- - $FML: main.cf.sgml,v 1.7 2002/09/15 02:11:24 fukachan Exp $ + $FML: main.cf.sgml,v 1.8 2003/04/15 14:51:41 fukachan Exp $ --> <sect2 id="main.cf"> <title> - 例: /etc/fml/main.cf + 例: /usr/local/etc/fml/main.cf </title> <para> -/etc/fml/main.cf は各MLの設定ではありません。fml のバージョンなどメ -タレベルの依存性を解決するための設定ファイルで、fml のプログラム群が起 -動する時に参照します。また、main.cf には ディレクトリやプロセスのユー -ザの指定など最も基本的な情報のみが書かれています。 +/usr/local/etc/fml/main.cf は各MLの設定ではありません。fml のバージョ +ンなどメタレベルの依存性を解決するための設定ファイルで、fml のプログラ +ム群が起動する時に参照します。また、main.cf には ディレクトリやプロセ +スのユーザの指定など最も基本的な情報のみが書かれています。 </para> <para> @@ -29,7 +29,7 @@ main.cf のフォーマットは他の .cf と同様 <screen> # -# $FML: main.cf.sgml,v 1.7 2002/09/15 02:11:24 fukachan Exp $ +# $FML: main.cf.sgml,v 1.8 2003/04/15 14:51:41 fukachan Exp $ # # fml version @@ -54,10 +54,10 @@ exec_prefix = ${prefix} # $config_dir holds the global main configuration and # several version-dependent default configurations -# Example: /etc/fml -config_dir = /etc/fml +# Example: /usr/local/etc/fml +config_dir = /usr/local/etc/fml -# Example: /etc/fml/defaults/$fml_version +# Example: /usr/local/etc/fml/defaults/$fml_version default_config_dir = $config_dir/defaults/$fml_version # defined for convenience, for example, we need this variable @@ -98,12 +98,12 @@ default_domain = fml.org # version dependent default_config.cf location # whic holds -# Example: /etc/fml/defaults/8.0/default_config.cf +# Example: /usr/local/etc/fml/defaults/8.0/default_config.cf default_config_cf = $default_config_dir/default_config.cf # domain specific configurations -# Example: /etc/fml/domains/fml.org/default_config.cf +# Example: /usr/local/etc/fml/domains/fml.org/default_config.cf domain_default_config = $config_dir/domains/$default_domain/config.cf diff --git a/fml/doc/ja/tutorial/internals/style.sgml b/fml/doc/ja/tutorial/internals/style.sgml index 7f512046..8be16438 100644 --- a/fml/doc/ja/tutorial/internals/style.sgml +++ b/fml/doc/ja/tutorial/internals/style.sgml @@ -1,5 +1,5 @@ <!-- - $FML: style.sgml,v 1.10 2003/11/30 09:16:55 fukachan Exp $ + $FML: style.sgml,v 1.11 2004/03/31 06:29:38 fukachan Exp $ --> <chapter id="programingstyle"> @@ -60,7 +60,7 @@ mail は「いわゆるメール」つまり messager/rfc822 形式のものです。 fml システムへ入力されるものも mail だし、出ていくものも mail です。 それらは mail から派生したサブクラスと考えられるため、 「PREFIX_mail_属性」形式に統一する方が良いでしょう。 -が、ものすごく厳密にやると逆にわけ分からないので程ほどに。 +が、ものすごく厳密にやると、逆に、わけがわからないのでほどほどに。 </para> <para> @@ -78,7 +78,7 @@ use_report_mail_何とか report_mail_何とか </screen> この例でも、厳密には outgoing_report_mail とかするべきなんでしょうけど、 -そこまではやらないのが程ほどってところですね。 +そこまではやらないのがほどほどってところですね。 </para> <para> @@ -99,7 +99,7 @@ use_command_mail_header_なんとか <link linkend="list.variables.by.class"> クラスの階層構造 </link> -で現すと、こーんな感じになるとおもいます。 +であらわすと、こーんな感じになるとおもいます。 <screen> command { SOMETHING_command @@ -335,7 +335,7 @@ Srting::is_japanese_string() libexec/ や libkern.pl にある関数は、 main:: に記述される部分は基本的なフローを記述している。 これらは基本的な枠組を示すものであるため、 - $CurProc (C でいえば struct *curproc にあたるもの) + $curproc (C でいえば struct *curproc にあたるもの) を受け渡す、構造化プログラミング的な書き方をしている。 </para> diff --git a/fml/doc/ja/tutorial/internals/userctl.sgml b/fml/doc/ja/tutorial/internals/userctl.sgml index 0d920c32..727169fa 100644 --- a/fml/doc/ja/tutorial/internals/userctl.sgml +++ b/fml/doc/ja/tutorial/internals/userctl.sgml @@ -1,10 +1,10 @@ <!-- - $FML: db.sgml,v 1.7 2003/04/15 14:51:40 fukachan Exp $ + $FML: userctl.sgml,v 1.1 2003/05/12 10:16:40 fukachan Exp $ --> <chapter id="userctl"> <title> - ユーザの制御 + ユーザの登録、削除について </title> @@ -14,45 +14,45 @@ </title> <para> -追加は primary_*_map に対しておこなう。 -削除も primary_*_map に対しておこなう。 +ユーザの追加と削除は何に対して行なうか?というと +追加は primary_*_map に対しておこないます。 +削除も primary_*_map に対しておこないます。 </para> <para> たとえば、リモート管理者は primary_admin_member_map と primary_admin_recipient_map の両方に -アドレスを追加する。 +アドレスを追加します。 削除の際は、 primary_admin_member_map と primary_admin_recipient_map から -アドレスを削除する。 +アドレスを削除します。 </para> <para> -これを admin_member_maps と admin_recipient_maps にすると問題だ。 +これを admin_member_maps と admin_recipient_maps にすると問題があります。 </para> <para> -追加は、明らかに複数の map に追加してしまうので、一つに限定するべきだ。 +追加は、明らかに複数の map に追加してしまうので、一つに限定するべきです。 だから、primary_*_map 一つに対して行なう。 -メンバーは primary_xxx_member_map ひとつに、 -受信者は primary_xxx_recipient_map 一つに対して行なう。 +つまり、メンバーは primary_xxx_member_map ひとつに、 +受信者は primary_xxx_recipient_map 一つに対して行ないます。 </para> <para> -削除だが、一見 *_maps でもよいような気がするが、 -実は駄目だ。消し過ぎになってしまうことがある。 -特に問題になるのは、権限の異なる map が混在している場合である。 +削除は、一見 *_maps でもよいような気がしますが、 +実は駄目です。消し過ぎになってしまうことがあるからです。 +特に問題になるのは、権限の異なる map が混在している場合です。 </para> <para> -たとえば、 -member_maps はデフォルトで、リモート管理者を含んでいる。 +たとえば、member_maps はデフォルトで、リモート管理者を含んでいます。 <screen> member_maps = $primary_member_map $admin_member_maps </screen> -そのため、member_maps に対して削除を試みると、 -勢いあまってリモート管理者の分も削除してしまうことになる +そのため、member_maps に対して削除を試みると、勢いあまってリモート管理 +者の分も削除してしまうことになるというわけです。 </para> </sect1> diff --git a/fml/doc/ja/tutorial/message/chapter.sgml b/fml/doc/ja/tutorial/message/chapter.sgml index 0b70dddc..37d29479 100644 --- a/fml/doc/ja/tutorial/message/chapter.sgml +++ b/fml/doc/ja/tutorial/message/chapter.sgml @@ -1,16 +1,18 @@ <!-- - $FML: chapter.sgml,v 1.4 2002/07/06 14:55:19 fukachan Exp $ + $FML: chapter.sgml,v 1.5 2003/04/15 14:51:42 fukachan Exp $ --> <chapter id="mail.manipulation"> - <title> メッセージ(メール)の操作 </title> + <title> + メッセージ(メール)の操作 + </title> <para> -メール(オブジェクト)を扱う関数の詳細については +メール(オブジェクト)を扱うメソッドの詳細については <link linkend="module.mail.message"> Mail::Message クラス </link> -を見て下さい。 +のほうを見て下さい。 このクラスが基本的な操作法を提供しています。 Mail::Bounce や Mail::Delivery を始め、 あらゆる関数がこのクラスに依存しています。 @@ -19,19 +21,19 @@ Mail::Bounce や Mail::Delivery を始め、 <!-- ======================================= --> <sect1> - <title> Mail::Message クラス </title> + <title> + Mail::Message クラス + </title> <para> -メールはヘッダに始まりボディ(メール本文)が続きます。 -multipart のように、 -ボディは複数の部分(パート)から成ることもあります。 +メールはヘッダに始まりボディ(メール本文)が続きます。MIME/Multipart の +ように、ボディは複数の部分(パート)から成ることもあります。 </para> <para> -メールの配送処理だけを考えると、 -メール本文の細部の構造を気にする必要はありません。 -一方で、フィルタリングを始めとして、メール本文の解析を -必要としている処理は多々あります。 +メールの配送処理だけを考えると、メール本文の細部の構造を気にする必要は +ありません。一方で、フィルタリングを始めとして、メール本文の解析を必要 +としている処理は多々あります。 </para> <para> @@ -67,7 +69,9 @@ Mail::Bounce や Mail::Delivery を始め、 <!-- ======================================= --> <sect1> - <title> Mail::Message::Parse クラス </title> + <title> + Mail::Message::Parse クラス + </title> <para> ダミーの派生クラスです。 @@ -88,7 +92,9 @@ Mail::Bounce や Mail::Delivery を始め、 <!-- ======================================= --> <sect1> - <title> Mail::Message::Compose クラス </title> + <title> + Mail::Message::Compose クラス + </title> <para> これはメールを構築する際に用いるクラスですが、単なるアダプタです。 diff --git a/fml/doc/ja/tutorial/message/language.sgml b/fml/doc/ja/tutorial/message/language.sgml index ff2e4780..fff0617c 100644 --- a/fml/doc/ja/tutorial/message/language.sgml +++ b/fml/doc/ja/tutorial/message/language.sgml @@ -1,5 +1,5 @@ <!-- - $FML: language.sgml,v 1.4 2002/07/06 14:55:19 fukachan Exp $ + $FML: language.sgml,v 1.5 2003/04/15 14:51:42 fukachan Exp $ --> @@ -9,20 +9,23 @@ </title> <para> -メッセージの多国語化のために、 +&fml8; では、メッセージの多国語化のために、 reply_message_nl() <footnote> <para> FML::Process::Kernel を参照 </para> </footnote> -を使い、 +メソッドを使い、 <screen> $curproc->reply_message_nl('error.already_member', 'already member', { _arg_address => $address }); </screen> -のような呼び出し方をします。 +のような呼び出し方をすることにしています。 +</para> + +<para> この関数は /usr/local/share/fml/バージョン/message/言語名/error/already_member というテンプレートを用いてメッセージを構築します。 @@ -31,11 +34,12 @@ $curproc->reply_message_nl('error.already_member', <para> メッセージ中の $_arg_変数名、例えば、 <screen> -$_args_address +$_arg_address </screen> -はハッシュリファレンスとして与えられた引数へ展開されます。 -メッセージテンプレート中の $_arg_address は、その値で -展開されます。 +はハッシュリファレンスとして与えられた引数の値へ展開されます。 +上の例でいえば、 +メッセージテンプレート中の $_arg_address が引数中の +_arg_address の値で展開されます。 </para> <para> diff --git a/fml/doc/ja/tutorial/operations/backup.sgml b/fml/doc/ja/tutorial/operations/backup.sgml index a2d175af..061c0611 100644 --- a/fml/doc/ja/tutorial/operations/backup.sgml +++ b/fml/doc/ja/tutorial/operations/backup.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: backup.sgml,v 1.1 2004/03/25 04:10:03 fukachan Exp $ --> @@ -13,11 +13,11 @@ fml8 の設定にかんしては、これら(最少で2つ)のディレクトリ以下のファイ ルをバックアップしておけば良いです。 <screen> -/etc/fml/ +/usr/local/etc/fml/ $ml_home_prefix (たとえば /var/spool/ml/、ドメインごとに異なります) </screen> ただ、これら全部をバックアップすると、記事やログファイルなどあらゆるも -のが含まれているので、サイズは大きいです。 +のが含まれているので注意して下さい。 </para> <para> @@ -30,17 +30,17 @@ Postfixなら、/etc/postfixです。 数)のディレクトリということになります。 <screen> /etc/postfix/ -/etc/fml/ +/usr/local/etc/fml/ $ml_home_prefix (たとえば /var/spool/ml/、ドメインごとに異なります) </screen> </para> <para> -もう少し、詳しく説明します。 +以下で、もう少し、詳しく説明します。 </para> -<sect1 id="operations.backup.fml8"> +<sect1 id="operations.backup.fml8.include"> <title> fml8 の設定をバックアップする </title> @@ -50,7 +50,7 @@ fml8 の設定にかんしては、この2つのディレクトリ以下のファイルをバック アップしておけば良いのですが、ただ、これだと記事やログファイルなどあら ゆるものが含まれているので、サイズが大きいです。 <screen> -/etc/fml/ +/usr/local/etc/fml/ $ml_home_prefix (たとえば /var/spool/ml/、ドメインごとに異なります) </screen> </para> @@ -73,7 +73,8 @@ $ml_home_prefix (たとえば /var/spool/ml/、ドメインごとに異なります) </title> <para> -個別にバックアップしようとすると結構めんどうです。 +個別にバックアップしようとすると結構めんどうですが、ファイル名の命名ルー +ルを頼りに対象を絞り込むと少しは楽になります。 </para> <para> @@ -84,8 +85,8 @@ key = value </screen> 形式の設定ファイルです。この形式のファイルには <screen> -/etc/fml/main.cf -/etc/fml/site_default_config.cf +/usr/local/etc/fml/main.cf +/usr/local/etc/fml/site_default_config.cf /MLのホームディレクトリ/config.cf </screen> などがあります。 @@ -94,12 +95,17 @@ key = value <para> また、これら以外にも、シンタックスの異なる <screen> -/etc/fml/mime_component_filter -/etc/fml/ml_home_prefix +/usr/local/etc/fml/mime_component_filter +/usr/local/etc/fml/ml_home_prefix </screen> などのファイルがあります。このファイルの形式は空白区切りです。 </para> +<para> +ただ、/usr/local/etc/fml/ 以下にログとかはないので、 +何も考えずに全部バックアップしておいて良いと思います。 +</para> + </sect2> @@ -129,15 +135,17 @@ key = value </sect2> +</sect1> -<sect2> + +<sect1 id="operations.backup.fml8.exclude"> <title> - 特定のディレクトリ以外、全部バックアップする + fml8 の設定をバックアップする: 特定のディレクトリ以外、全部 </title> <para> -たぶん、以下のディレクトリを除いて全部をバックアップすると楽で良いはず -です。 +対象を絞るより、以下のディレクトリを除いて全部をバックアップすると楽で +良いはずです。 <screen> spool 記事 tmp 中間ファイル @@ -145,8 +153,10 @@ var 各種のデータ </screen> </para> -</sect2> - +<para> +rsync でバックアップする場合なら、--exclude オプションなどで、これらの +ターゲットだけを抜くとかできるはずです。 +</para> </sect1> diff --git a/fml/doc/ja/tutorial/overview/fml.sgml b/fml/doc/ja/tutorial/overview/fml.sgml index 688cab02..3ad0ade1 100644 --- a/fml/doc/ja/tutorial/overview/fml.sgml +++ b/fml/doc/ja/tutorial/overview/fml.sgml @@ -1,5 +1,5 @@ <!-- - $FML: fml.sgml,v 1.3 2002/07/07 01:57:12 fukachan Exp $ + $FML: fml.sgml,v 1.4 2003/04/15 14:51:43 fukachan Exp $ --> <chapter id="overview.fml"> @@ -8,6 +8,15 @@ </title> +<para> +なお、fml4 と fml8 の相違点についての詳細は、 +<link linkend="changes"> +<xref linkend="changes"> +</link> +を参照して下さい。 +</para> + + <!-- ======================================================== --> <sect1 id="overview.fml8"> <title> @@ -15,8 +24,8 @@ </title> <para> -&fml4; の再実装にあたっての山場はすでに越えたと思います。 -でも、こまごまとしたものはいろいろと残っていますが… +&fml4; の再実装にあたっての山場は越えたと思います。 +あとは、こまごま、いろいろです。 </para> <para> @@ -26,14 +35,21 @@ <listitem> <para> 設定ファイル形式が新しくなりました。 - 今度は postfix 風の設定ファイルです。 + 今度は + <link linkend="internal.config.cf"> + postfix 風の設定ファイル + </link> + です。 </para> </listitem> <listitem> <para> - makefml によるコマンド操作は &fml4; と同様です: + <link linkend="usage.onhost"> + makefml によるコマンド操作 + </link> + は &fml4; と同様です: MLの作成/削除、 メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 @@ -41,11 +57,19 @@ メンバーリストを見る、 他。 </para> + + <para> + CUI の使い方の相違点については + <link linkend="changes.cui"> + 『<xref linkend="changes.cui">』 + </link> + を参照して下さい。 + </para> </listitem> <listitem> <para> - CGI による操作: + GUI (CGI) による操作: MLの作成/削除、 メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 @@ -65,7 +89,10 @@ <listitem> <para> - コマンドメール(一般ユーザ): + <link linkend="usage.user"> + コマンドメール(一般ユーザ) + </link> + : メンバーの登録/削除/変更(chaddr)、 リモート管理者の登録/削除、 ログを見る、 @@ -84,7 +111,9 @@ <listitem> <para> + <link linkend="error.internal"> エラーメールの自動解析 + </link> </para> </listitem> @@ -99,7 +128,8 @@ <listitem> <para> スレッド追跡システム(CUI と CGI を含む): - (fmlthread fmlthread.cgi) + 一度、作ったのですが、最初のバージョンは削除され、 + 2004/03 に総書き直しされました。 </para> </listitem> @@ -107,7 +137,8 @@ <listitem> <para> 記事の HTML 化(デフォルトで HTML 版も作る): - fmlhtmlify および makefml に HTML 化コマンドがあります。 + デフォルトで作っています。別途、 + fmlhtmlify および makefml に HTML 化コマンドもあります。 </para> </listitem> @@ -115,7 +146,7 @@ <listitem> <para> MTA が起動するメインのプログラム: - fml.pl distribute command error + distribute command error </para> </listitem> @@ -127,8 +158,6 @@ fmlailas fmlconf fmldoc - fmlhtmlify - fmlsch makefml fml </para> @@ -160,29 +189,33 @@ <important> <para> -インスール方法は GNU autoconf を使うデファクトスタンダードなものとなっ -ています。&fml4; にあまり似ていません。ですが、OS 附属のパッケージシス -テムなどにはやさしくなっているといえるでしょう。 +インスール方法は GNU autoconf を使うデファクトスタンダード(configure +そして make)なものとなっています。&fml4; にあまり似ていません。ですが、 +OS 附属のパッケージシステムなどにはやさしくなっているといえるでしょう。 </para> <para> -インストールにおける主な注意点/&fml4;との相違点は、 +&fml8; のインストールにおける主な注意点(&fml4;との相違点)は、 「root での作業」、 「configure の使用」、 -そして /usr/local/etc/fml/ 以下のファイル、 -特に -/usr/local/etc/fml/main.cf +/usr/local/etc/fml/ +のファイル編集です。 +&fml8; の +/usr/local/etc/fml/ +以下のファイル群は +&fml4; の +/usr/local/fml/.fml 以下のファイル群 および /usr/local/etc/fml/site_default_config.ph -というグローバルな設定ファイルの編集などです。 +などに相当していますが、必ずしも一対一対応するわけではありません。 </para> </important> <para> -さて、いつものように elena ML(elena@fml.org)の作成過程を例にとりましょ -う。インストールのおおまかな流れは次のようになります。 +さて、いつものように Unix 上で elena ML(elena@fml.org)を作成するケー +スを例にとりましょう。インストールのおおまかな流れは次のようになります。 </para> @@ -199,6 +232,7 @@ <para> <link linkend="install.fml.unix"> ユーザ root でインストールをします。 + </link> ユーザ root になったら、 まずはユーザ fml とグループ fml を作成します。 その後、 @@ -206,7 +240,6 @@ configure </link> および make install を実行して下さい。 - </link> <screen> % su root # groupadd fml @@ -221,7 +254,8 @@ <footnote> <para> デフォルトでは /usr/local ディレクトリ以下に - 適宜サブディレクトリが作られます。 + 4.4 BSD 風のサブディレクトリが作られます。 + ディレクトリパスは <link linkend="install.fml.unix.configure"> configure のオプション </link> @@ -249,14 +283,14 @@ % su fml % fml elena newml </screen> -でも OK になりました。 +でも同じ意味です(注意: fml コマンドは &fml8; にしかありません)。 </para> </listitem> <listitem> <para> - MTA から fml を起動するために + MTA から &fml8; の配送プログラムなどを起動するために、 MTA の設定をしてください。 </para> </listitem> @@ -272,7 +306,7 @@ <listitem> <para> <link linkend="guide.config.cf"> - ML のカスタマイズをする。 + ML のカスタマイズをしてください。 </link> </para> </listitem> @@ -295,7 +329,7 @@ </title> <para> -makefml を使ってMLを作成します。 +makefml コマンドを使ってMLを作成します。 デフォルトのドメイン(例: fml.org)の場合、 makefml の使い方は &fml4; の時と同様です。 elena@fml.org MLを作るには @@ -312,8 +346,11 @@ elena@fml.org MLを作るには </para> <para> -一方、バーチャルドメイン(nuinui.net)の場合は、 -MLのアドレスを全部指定して下さい。 +一方、 +<link linkend="virtualdomain"> +バーチャルドメイン(nuinui.net) +</link> +の場合は、MLのアドレスを全部指定して下さい。 たとえば elena@nuinui.net を作る場合は、次のように実行します。 <screen> % su fml @@ -321,13 +358,25 @@ elena@fml.org MLを作るには </screen> </para> +<warning> +<para> +バーチャルドメイン(nuinui.net)のMLを作る場合、最初の一回目には、「そ +のドメインを使う」ための宣言(おまじない?)が必要です。くわしくは +<link linkend="virtualdomain"> +<xref linkend="virtualdomain"> +</link> +を参照して下さい。 +</para> +</warning> + </sect1> <!-- ============================================================= --> <sect1 id="guide.subscribe"> - - <title> MLのメンバーを登録する </title> + <title> + MLのメンバーを登録する + </title> <para> デフォルトのドメイン(例: fml.org)の場合は、 @@ -349,8 +398,9 @@ elena@fml.org MLを作るには <!-- ============================================================= --> <sect1 id="guide.unsubscribe"> - - <title> MLのメンバーから削除する </title> + <title> + MLのメンバーから削除する + </title> <para> デフォルトのドメイン(例: fml.org)の場合は、 @@ -391,10 +441,10 @@ elena@fml.org MLを作るには <para> /usr/local/etc/fml/site_default_config.cf -はこのホストで動く fml すべてに影響を与えます。 +は、このホストで動く fml すべてに影響を与えます。 <footnote> <para> -これは &fml4; の site_init.ph に相当するものです。 +これは &fml4; の site_force.ph に相当するものです。 </para> </footnote> </para> @@ -402,7 +452,10 @@ elena@fml.org MLを作るには <para> site_default_config.cf のフォーマットは、config.cf (後述)と同様で、 指定できる変数も config.cf と同じです。 -全変数のリストは default_config.ph (後述)を見て下さい。 +<link linkend="list.variables.by.alphabeticalorder"> +全変数のリスト +</link> +は default_config.ph (後述)を見て下さい。 </para> </sect2> @@ -417,8 +470,11 @@ site_default_config.cf のフォーマットは、config.cf (後述)と同様で、 elena MLの設定のカスタマイズは /var/spool/ml/elena/config.cf を編集して下さい。 -フォーマットは postfix の設定ファイルと同様です(&fml4; の config.ph よ -りは cf にやや近いですが、フォーマットが違うことに変わりはない)。 +<link linkend="internal.config.cf"> +フォーマットは postfix の設定ファイル +</link> +と同様です(&fml4; の config.ph よりは cf にやや近いですが、フォーマッ +トが違うことに変わりはない)。 </para> <para> diff --git a/fml/doc/ja/tutorial/preface.sgml b/fml/doc/ja/tutorial/preface.sgml index 64d2e953..3aee81f1 100644 --- a/fml/doc/ja/tutorial/preface.sgml +++ b/fml/doc/ja/tutorial/preface.sgml @@ -1,5 +1,5 @@ <!-- - $FML: preface.sgml,v 1.18 2003/04/15 14:51:35 fukachan Exp $ + $FML: preface.sgml,v 1.19 2004/04/02 04:53:40 fukachan Exp $ --> @@ -17,7 +17,7 @@ <warning> <para> -現状の &fmldevel; は運用ベースの実証実験の段階に入り、 +現状の &fml8; は運用ベースの実証実験の段階に入り、 config.cf の編集支援ツール(makefml config や CGI からの設定変更)を 除いて基本的な機能は実装されています。 つまりMLごとに細かい設定変更をしたい場合はファイルの編集が必要ですが、 @@ -33,18 +33,18 @@ config.cf の編集支援ツール(makefml config や CGI からの設定変更)を </para> <para> -ただ 4.0 の細かい昨日まで実装されているわけではありません。 -その意味で、いろいろな機能を使いたい人は、まだ +ただ &fml4; の細かい機能まで実装されているわけではありません。 +非常にマニアックな機能を使いたい人は、まだ <ulink url="http://www.fml.org/software/fml/menu.html"> 4.0 stable </ulink> -を使う方がよいでしょう。 +を使う方がよいでしょうが、たいていの用途では &fml8; で大丈夫です。 </para> <para> -なお、現在の &fmldevel; で動く機能そして TODO リストは -<ulink url="../../../fml/doc/ja/todo/STATUS.html"> -http://www.fml.org/software/fml-devel/fml/doc/ja/todo/STATUS.html +なお、現在の &fml8; で動く機能そして TODO リストは +<ulink url="http://www.fml.org/software/fml8/fml/doc/ja/todo/STATUS.html"> +http://www.fml.org/software/fml8/fml/doc/ja/todo/STATUS.html </ulink> を参照して下さい。 </para> @@ -55,15 +55,14 @@ http://www.fml.org/software/fml-devel/fml/doc/ja/todo/STATUS.html <!-- ======================================================== --> <sect1 id="way.to.fmlng"> - <title> 次世代 fml への道 </title> <para> -&fmldevel; プロジェクトは &fml4; を『1 から書き直す次世代 fml プロジェ -クト』の総称です。これは &fml4; までに至る約 10 年の経験を再実装する試 -みといえます。ざっくりとしたイメージしては &fml4; &fmldevel; の違いは +&fml8; プロジェクトは &fml4; を『1 から書き直す次世代 fml プロジェクト』 +です。これは &fml4; までに至る約 10 年の経験を再実装する試みといえます。 +&fml4; と &fml8; の関係は sendmail と postfix のような関係と思って下さい。 </para> @@ -98,14 +97,14 @@ bug tracking system を提供して欲しいし、bug tracking system もサーチエ <listitem> <para> - &fmldevel; へ引き継ぐべき機能は何か? + &fml8; へ引き継ぐべき機能は何か? </para> </listitem> <listitem> <para> - &fmldevel; でもっとうまく、 + &fml8; でもっとうまく、 よりカスタマイズしやすいものに実装できないか? </para> </listitem> @@ -144,7 +143,8 @@ fml 1.2 相当の最低限の機能 + 自動 HTML 化機構 </screen> が動くことになるでしょう -(というか、これらの機能はすでに動いています)。 +(というか、これらの機能はすでに動いていて一年以上、複数の環境で動作確 +認がされています)。 </para> </sect1> @@ -153,12 +153,12 @@ fml 1.2 相当の最低限の機能 <!-- ======================================================== --> <sect1 id="fml.and.fmlng"> <title> - &fml4; と &fmldevel; の開発体制について + &fml4; と &fml8; の開発体制について </title> <para> -&fml4; と &fmldevel; は -&fmldevel; で作られたモジュールのマージと +&fml4; と &fml8; は +&fml8; で作られたモジュールのマージと &fml4; 自体のコードの保守をしつつ、 並行開発されていっています。 </para> @@ -168,7 +168,7 @@ fml 1.2 相当の最低限の機能 current という位置付けになります。4.0 の bug fix は 4.0.x (4.0.1 4.0.2 …)としてまとめられリリースされていく予定です。 また 4.0-current は 4.0.x のためのテストケースであり、 -&fmldevel; は本当の開発コード( fml-current )という位置付けといえます。 +&fml8; は本当の開発コード( fml-current )という位置付けといえます。 <screen> fml-devel -----------------------------> 8.0 ? (次世代プロジェクトの目標) @@ -180,17 +180,17 @@ current という位置付けになります。4.0 の bug fix は 4.0.x (4.0.1 4.0.2 </para> <para> -&fmldevel; 用に作られたモジュールを &fml4; へ輸入する予定です。 +&fml8; 用に作られたモジュールを &fml4; へ輸入する予定です。 たとえば 4.0 でも独立性の高い mead (エラーメール解析プログラム)や、 スレッド追跡システムです。 -これは &fmldevel; の機能を 4.0 でテストをするいう意味あいもあります。 +これは &fml8; の機能を 4.0 でテストをするいう意味あいもあります。 この作業は 4.0.4 か 4.0.5 以降本格化する予定です。 </para> <para> 言い替えると、 4.0 系列の bug fix は 4.0 で行ないますが、 -新機能は、&fmldevel; で開発したものをモジュール単位で 4.0 へ輸入していく +新機能は、&fml8; で開発したものをモジュール単位で 4.0 へ輸入していく 形をとります。 </para> @@ -200,7 +200,6 @@ current という位置付けになります。4.0 の bug fix は 4.0.x (4.0.1 4.0.2 <!-- ======================================================== --> <sect1 id="mailinglist"> - <title> メーリングリスト </title> @@ -258,7 +257,7 @@ fml-devel MLのログは </title> <para> -&fmldevel; のアイデアのついて、 +&fml8; のアイデアのついて、 <ulink url="mailto:fml-request@fml.org"> ご意見・御感想をお待ち </ulink> diff --git a/fml/doc/ja/tutorial/setup/config.cf.sgml b/fml/doc/ja/tutorial/setup/config.cf.sgml index 73039fd1..88ee08da 100644 --- a/fml/doc/ja/tutorial/setup/config.cf.sgml +++ b/fml/doc/ja/tutorial/setup/config.cf.sgml @@ -1,5 +1,5 @@ <!-- - $FML: config.cf.sgml,v 1.2 2002/07/06 14:55:20 fukachan Exp $ + $FML: config.cf.sgml,v 1.3 2003/04/15 14:51:44 fukachan Exp $ --> <sect1 id="setup.config.cf"> @@ -10,11 +10,9 @@ <para> makefml は、 makefml newml を実行した際に、 -各MLごとに config.cf (設定ファイル) と -fml を起動するために MTA が呼び出すファイルである -(postfix のための) include 類および -~fml/.qmail-* -など必要な設定ファイル一式を用意します。 +そのMLの config.cf などの設定ファイル群を一式を作り、 +さらに、MTA がfml を起動する際に使う include 類( postfix 用)および~ +fml/.qmail-* ( qmail 用)など必要な設定ファイル一式を用意します。 <screen> % su fml % makefml newml elena @@ -25,30 +23,35 @@ config.cf include include-ctl include-error </screen> </para> -<para> -(現状)MLのカスタマイズは config.cf をエディタで編集して下さい。 -</para> - <warning> + <para> -まだ、設定ツールはできていません。 +現状、設定支援ツールがまだないので、MLのカスタマイズは config.cf を +エディタで編集して下さい。 </para> + </warning> +<para> +makefml newml が作る config.cf には、ほとんど何も定義されていません。 +config.cf の先頭の ml_domain と ml_name もコメントになっていますが、そ +れらはコマンドの引数から自動的に決定されます。 +</para> <para> -config.cf には、ほとんど何も定義されていません。config.cf の先頭の -ml_domain と ml_name もコメントになっていますが、それらはコマンドの引 -数で決まります。 たとえば /var/spool/ml/elena/include ファイルは <screen> "| /usr/local/libexec/fml/distribute elena@fml.org" </screen> そして、/var/spool/ml/elena/include-ctl ファイルは <screen> +"| /usr/local/libexec/fml/command elena@fml.org" </screen> -などとなっています。このコマンド引数の elena@fml.org の部分から -ml_domain と ml_name を設定しています。 +などとなっています。MTAから起動された +/usr/local/libexec/fml/distribute +コマンドなどが、このコマンド引数の elena@fml.org の部分からml_domain +と ml_name を自動的に設定します。そのため config.cf ではコメントのまま +で問題ありません。 </para> <para> diff --git a/fml/doc/ja/tutorial/setup/merge.fml4to8.sgml b/fml/doc/ja/tutorial/setup/merge.fml4to8.sgml index 50fc3fe6..5d3ea810 100644 --- a/fml/doc/ja/tutorial/setup/merge.fml4to8.sgml +++ b/fml/doc/ja/tutorial/setup/merge.fml4to8.sgml @@ -1,5 +1,5 @@ <!-- - $FML: merge.fml4to8.sgml,v 1.2 2004/03/18 14:51:25 fukachan Exp $ + $FML: merge.fml4to8.sgml,v 1.3 2004/03/31 06:28:19 fukachan Exp $ --> @@ -31,7 +31,7 @@ fml4 の $DIR ($ml_home_dirにあたるもの)、 <para> 上書きしてしまうと、一斉に移行を強制することになるし、失敗した時が痛過 ぎます。やっぱり、少しずつ移行していきたいよね?また、少しずつ移行する -場合にも、出来れば、逆戻りができたほうがいい。 +場合にも、出来れば、逆戻りができたほうがいいでしょう。 </para> <para> @@ -94,16 +94,22 @@ fml8 は fml4 を一旦忘れて、一から再設計、再コーディングされたソフトウ </para> <para> -いくつかの例をあげよう。 +以下、いくつかの例をあげます。 </para> + +<sect2> + <title> + 誰でも投稿可能にしたい + </title> + <para> 「登録されたユーザからのみ投稿が可能」なのは fml4 でも fml8 でもデフォ -ルトです。もし、誰からの投稿も許す場合、fml4 では +ルトです。もし誰でも投稿可能にしたいなら、fml4 (の config.ph ファイル)では <screen> $PERMIT_POST_FROM = "anyone"; </screen> -としますが、fml8 では +としますが、fml8 (の config.cf)では <screen> article_post_restrictions = reject_system_special_accounts permit_anyone @@ -112,20 +118,36 @@ article_post_restrictions = reject_system_special_accounts となります。 </para> +</sect2> + +<sect2> + <title> + Subject タグ + </title> + <para> -デフォルトでは「Subjectのタグがない」。これも同じです。 -しかしながら変更はこうなります。fml4 での +デフォルトでは「Subjectのタグがない」。 +これも &fml4; と &fml8; で同じです。 +そして、fml4 での <screen> $SUBJECT_TAG_TYPE = '[:]'; </screen> は fml8 の <screen> article_header_rewrite_rules += rewrite_article_subject_tag -article_subject_tag = [$ml_name:%05d] + +article_subject_tag = [$ml_name:%05d] </screen> -に相当します。 +に相当しています。 </para> +</sect2> + +<sect2> + <title> + 特定のコマンドを使えなくする + </title> + <para> 「members コマンドなどが使えない」これは fml8 ではデフォルトです。 fml4 の以下のコマンドに対応するものは不要です。 @@ -142,9 +164,12 @@ fml4 の以下のコマンドに対応するものは不要です。 <para> fml4 以前および fml4 非推奨設定の状態では「フィルタは使わない」ように なっています。しかし、fml8 では「フィルタを使う」がデフォルトです。 -そのため、場合によっては -/etc/fml/site_default_config.cf で一度「デフォルトでは使わない」に設定 -を変更し、その上で、あらためて以下の例外ルールを適用する必要があります。 +</para> + +<para> +そのため、場合によっては /usr/local/etc/fml/site_default_config.cf で +一度「デフォルトでは使わない」に設定を変更し、その上で、あらためて以下 +の例外ルールを適用する必要があります。 </para> <para> @@ -152,6 +177,8 @@ fml4 と異なり、subscribe, chaddr, unsubscribe はconfirmation が必須と なっています。現状、confirmation を抑制することは出来ません。 </para> +</sect2> + </sect1> @@ -235,6 +262,24 @@ fml8 の aliases ファイルに該当するML部分の設定を追加 が必要です。 </para> +<para> +逆に +aliases +の重複さえなければ、 +同じシステム上に +&fml4; +と +&fml8; +が存在しても問題ありません。 +もちろん同一MLが +&fml4; +と +&fml8; +の双方に存在しても問題ありませんが、 +実際に動くのは、 +もちろんいづれか(MTA から起動されるようになっている)一方だけです。 +</para> + </sect1> diff --git a/fml/doc/ja/tutorial/setup/newml.recipes.sgml b/fml/doc/ja/tutorial/setup/newml.recipes.sgml index 46803e28..8dc4c5da 100644 --- a/fml/doc/ja/tutorial/setup/newml.recipes.sgml +++ b/fml/doc/ja/tutorial/setup/newml.recipes.sgml @@ -1,5 +1,5 @@ <!-- - $FML: @recipe_template,v 1.1 2003/01/07 11:39:13 fukachan Exp $ + $FML: newml.recipes.sgml,v 1.1 2003/12/21 03:19:14 fukachan Exp $ --> @@ -30,9 +30,8 @@ ${ml_name}-admin: 管理者のメールアドレス $newml_command_ml_admin_default_address 変数の値が入ります。 -デフォルトでは、どのMLでも -/etc/fml/main.cf で定義されている管理者のアドレス $fml_owner -が使われます。 +デフォルトでは、どのMLでも /usr/local/etc/fml/main.cf で定義されてい +る管理者のアドレス $fml_owner が使われます。 それ以外のものにしたい場合、 $newml_command_ml_admin_default_address @@ -72,9 +71,9 @@ newml_command_mta_config_list に MTA のリストが定義されています。 <screen> newml_command_mta_config_list -= qmail </screen> - +としてください。~/.qmail-* ファイルの生成がされなくなります。 </para> -~/.qmail-* の生成が止まります。 + </answer> </qandaentry> diff --git a/fml/doc/ja/tutorial/setup/newml.sgml b/fml/doc/ja/tutorial/setup/newml.sgml index f52ed5cc..c7475235 100644 --- a/fml/doc/ja/tutorial/setup/newml.sgml +++ b/fml/doc/ja/tutorial/setup/newml.sgml @@ -1,5 +1,5 @@ <!-- - $FML: newml.sgml,v 1.5 2003/11/24 04:44:58 fukachan Exp $ + $FML: newml.sgml,v 1.6 2003/12/21 03:19:14 fukachan Exp $ --> @@ -28,7 +28,19 @@ makefml を使ってMLを作成します。 <screen> % su fml % makefml newml elena + ... 処理の様子が出力される(略) ... </screen> +デフォルトの/var/spool/ml以外にパスを切替えたい場合は +makefml newdomain コマンドでパスを指定して下さい。 +<screen> +% su root +# makefml newdomain fml.org /var/spool/virtual/fml.org +# exit +% su fml +% makefml newml elena + ... 処理の様子が出力される(略) ... +</screen> + </para> @@ -52,7 +64,8 @@ makefml を使ってMLを作成します。 <listitem> <para> /var/spool/ml/etc/mail/aliases に elena の設定を仕込む。 - postalias で /var/spool/ml/etc/mail/aliases.db を再生成する。 + postalias コマンドで + /var/spool/ml/etc/mail/aliases.db を再生成する。 </para> </listitem> @@ -70,6 +83,7 @@ makefml を使ってMLを作成します。 <listitem> <para> + HTML 化された記事を置く場所として以下の階層を用意する/作る。 <screen> ~fml/public_html/fml/mlarchive/$domain/$ml/ </screen> @@ -120,16 +134,19 @@ makefml を使ってMLを作成します。 makefml を使ってMLを作成します。 使い方は &fml4; と同様ですが、ML名にきちんとドメインまでつけて下さい。 <screen> +% su root +# makefml newdomain nuinui.net /var/spool/virtual/nuinui.net +# exit % su fml -% makefml newdomain nuinui.net /var/spool/virtual/nuinui.net % makefml newml elena@nuinui.net </screen> </para> <para> newdomainコマンドでは、ドメインと使うml_home_prefixディレクトリのペア -を指定します。このコマンドは /etc/fml/ml_home_prefix ファイルの編集を -代行します。上の例では ml_home_prefix ファイルに次の行を追加します。 +を指定します。このコマンドは /usr/local/etc/fml/ml_home_prefix ファイ +ルの編集を代行します。上の例では ml_home_prefix ファイルに次の行を追加 +します。 <screen> nuinui.net /var/spool/virtual/nuinui.net </screen> diff --git a/fml/doc/ja/tutorial/setup/postfix.sgml b/fml/doc/ja/tutorial/setup/postfix.sgml index dee6f602..27947294 100644 --- a/fml/doc/ja/tutorial/setup/postfix.sgml +++ b/fml/doc/ja/tutorial/setup/postfix.sgml @@ -1,5 +1,5 @@ <!-- - $FML: postfix.sgml,v 1.2 2002/07/06 14:55:20 fukachan Exp $ + $FML: postfix.sgml,v 1.3 2003/04/15 14:51:44 fukachan Exp $ --> <sect1 id="setup.postfix.aliases"> @@ -26,8 +26,9 @@ postfix の設定については <para> makefml はシステムの aliases (例: /etc/mail/aliases)を変更することはあ -りませんが、$ml_home_prefix/etc/mail/aliases への追加と aliases.db の -更新は自動的に行なわれています。 +りません。各ドメインごとにある alias ファイル +$ml_home_prefix/etc/mail/aliases へ必要な設定を追加することと、そのファ +イルから aliases.db を再生成する作業を行ないます。 </para> diff --git a/fml/doc/ja/tutorial/setup/procmail.sgml b/fml/doc/ja/tutorial/setup/procmail.sgml index 07afe5aa..ad5cf285 100644 --- a/fml/doc/ja/tutorial/setup/procmail.sgml +++ b/fml/doc/ja/tutorial/setup/procmail.sgml @@ -1,5 +1,5 @@ <!-- - $FML: procmail.sgml,v 1.2 2002/07/06 14:55:20 fukachan Exp $ + $FML: procmail.sgml,v 1.3 2003/04/15 14:51:44 fukachan Exp $ --> <sect1 id="setup.procmail"> @@ -16,16 +16,20 @@ <para> このような場合には、メールのヘッダの To: や Cc: を見て、適切に fml を -実行する必要があります。そして、&fmldevel; ではユーザが procmail など -の振分ツールを使うだろうと期待しています :-)そのため、&fmldevel; に振 -り分けツールは用意されていません。OS のパッケージシステムなどを使って -振り分けツールをインストールして下さい。 +実行する必要があります。 </para> <para> -makefml は newml の際に、~/.procmailrc の見本を -/var/spool/ml/etc/procmail/procmailrc -に作るので、適宜利用してみて下さい。 +こういった場合、&fmldevel; ではユーザが procmail などの振分ツールを使 +うだろうと期待しています:-)そのため、&fmldevel; に振り分けツールは用意 +されていません。OS のパッケージシステムなどを使って振り分けツールをイ +ンストールして下さい。 +</para> + +<para> +なお makefml は newml の際に、~/.procmailrc の見本を +/var/spool/ml/etc/procmail/procmailrc に作るので、適宜利用してみて下さ +い。 </para> diff --git a/fml/doc/ja/tutorial/setup/test.sgml b/fml/doc/ja/tutorial/setup/test.sgml index 92b56a07..8abd2797 100644 --- a/fml/doc/ja/tutorial/setup/test.sgml +++ b/fml/doc/ja/tutorial/setup/test.sgml @@ -1,5 +1,5 @@ <!-- - $FML$ + $FML: test.sgml,v 1.4 2003/04/15 14:51:44 fukachan Exp $ --> <chapter id="test"> @@ -32,12 +32,13 @@ newml の際の重複チェックを効かせるために postfix の aliases をきちんと追加して下さい。 これをしないと root MLとか作れちゃいます:-) </para> -</warning> <para> qmail をメールサーバに使っている人は特にやることはないとおもいます。 </para> +</warning> + <para> 以下では、&fmldevel; と MTA が動いているホスト(ahodori.fml.org)をメー ルサーバと呼びます。 @@ -57,16 +58,20 @@ qmail をメールサーバに使っている人は特にやることはないとおもいます。 </para> <para> -まず、メールサーバに個人宛のメールアドレス rudo@fml.org を用意しましょう。 -簡単に実行するには、ユーザ rudo くんを作ればよいでしょう。 +まず、メールサーバに個人宛のメールアドレスを用意しましょう。 +ここでは、ユーザるどくん rudo@fml.org とします。 +<footnote> +<para> +簡単に用意するには、ユーザ rudo くんを作ればよいでしょう。 +</para> +</footnote> </para> <para> -まず、メールサーバ以外のホストからの到達性を確認して下さい。 -つまり、 -メールサーバ以外のホストから -rudo@fml.org くんにメールを出し、ちゃんと受けとれるかを -確認してください。 +まず、メールサーバ以外のホストから rudo@fml.org へメールが届くか?(到 +達性)を確認して下さい。つまり、メールサーバ以外のホストから +rudo@fml.org くんにメールを出し、ちゃんと受信できているかを確認してく +ださい。もし受けとれないなら、そもそも Postfix の設定が間違っています。 </para> <para> @@ -75,6 +80,12 @@ rudo@fml.org くんにメールを出し、ちゃんと受けとれるかを <screen> % echo test |Mail rudo@fml.org </screen> +この場合も、 +もし受けとれないなら、そもそも Postfix の設定が間違っています。 +</para> + +<para> +Postfix の基本設定が正しいと確認できたらMLのテストに進んで下さい。 </para> </sect1> @@ -96,10 +107,12 @@ rudo@fml.org を登録して下さい。 </para> <para> -前節と同様に、ホスト外から、そしてホストの上から +前節と同様に、ホスト外から、そしてホストの上から、それぞれ elena@fml.org へテストメールを出してみて下さい。 この時、テストメールの From: が rudo@fml.org になっていないと -いけないことに注意して下さい。 +はじかれます。 +メンバー以外からのメールは受け付けないからです。 +注意して下さい。 </para> <sect2> @@ -152,13 +165,13 @@ fml8 には、今のところ、それに相当するものはありません。 % makefml newml test </screen> 今、テストしたMLのホームディレクトリは -/var/spool/ml/@test -に残っていますので、それも消してしまってかまいません。 +/var/spool/ml/@test.日付 +に残っています。 +テストで使っただけですので、これも消してしまってかまいません。 <screen> -% rm -fr /var/spool/ml/@test +% su fml +% rm -fr /var/spool/ml/@test.日付 </screen> -残しておくと、将来(今作った2つ目の) test ML を消そうと思った時に -困りますからね。 </para> </sect1> diff --git a/fml/doc/ja/tutorial/usage/chapter.onhost.sgml b/fml/doc/ja/tutorial/usage/chapter.onhost.sgml index 2d93603a..36e6facd 100644 --- a/fml/doc/ja/tutorial/usage/chapter.onhost.sgml +++ b/fml/doc/ja/tutorial/usage/chapter.onhost.sgml @@ -1,11 +1,10 @@ <!-- - $FML: chapter.onhost.sgml,v 1.8 2003/04/15 14:51:46 fukachan Exp $ + $FML: chapter.onhost.sgml,v 1.9 2004/02/26 05:29:59 fukachan Exp $ --> <chapter id="usage.onhost"> <title> - MLサーバのホスト上でコマンドを使ってできること - (MLの一番偉い管理者にできること) + MLサーバのホスト上でコマンドを使うと(ML管理者に)できること </title> @@ -15,6 +14,14 @@ makefml の基本的な使い方は &fml4; の makefml と同様です。 つまり互換性を保つようにしてあります。 </para> +<para> +相違点についての詳細は +<link linkend="changes.cui"> +『<xref linkend="changes.cui">』 +</link> +を参照して下さい。 +</para> + <sect1 id="usage.onhost.priviledge"> <title> @@ -22,8 +29,9 @@ makefml の基本的な使い方は &fml4; の makefml と同様です。 </title> <para> -makefml を使う操作は -例えば、メンバーの登録に confirmation は必要ありません。 +makefml を使う操作は confirmation が不要です。makefml を実行できる時点 +で特権的なユーザのはずだからです。たとえば、メンバーの登録は、コマンド +を実行すると、そのまま処理が行なわれます。 </para> <para> @@ -34,8 +42,8 @@ makefml を使う操作は </para> <para> -しかしながら、人間間違いを犯すもので、ついフォーマットを -間違えるといったことがあります。 +しかしながら、人間まちがいを犯すもので、ついファイルのフォーマットを間 +違えたりします。 </para> <para> @@ -68,7 +76,7 @@ fml ML名 コマンド オプション どうも、このポリシーでは、やたらと多くなるだけのようです。「できるだけ 分離せずに makefml に統合するべき」でしょう。そこで、以下のような基準 に基づき用意することにします(2003/03 記)。makefml に統合してある方が -admin コマンドや CGI でも使えるようになりうるので、再利用性が高いので +admin コマンドや CGI でも使えるようになりうるので、再利用性が高く、 有益です。 </para> @@ -113,9 +121,9 @@ fml ML名 コマンド オプション </title> <para> -特定のMLと関わりのないものもある。モジュールのドキュメントを見るとか、 -OS のアカウントやエイリアス一覧を表示させる類のものだ。 -これは fml が頭文字につくコマンドを別途用意する。 +特定のMLと関わりのないコマンドがあり得ます。たとえば、モジュールのド +キュメントを見るとか、OS のアカウントやエイリアス一覧を表示させる類の +ものです。これは fml が頭文字につくコマンドを別途用意します。 <screen> fmladdr [-n] fmlalias [-n] @@ -134,13 +142,13 @@ fmlconf [-n] $ml </title> <para> -これが一番困るケースのような気がする。どうしても作る必要があるなら、 -fml が頭文字につくコマンドを別途用意する。 +これが一番困るケースのような気がしますが、どうしても作る必要があるなら、 +fml が頭文字につくコマンドを別途用意します。 </para> <para> 例: 記事のスプールを HTML 化する。 -でも、fml に限らず、MH フォルダでも構わない。 +でも、fml に限らず、ソースが MH フォルダなどでも構わない。 <screen> fmlhtmlify [-I DIR] $src_dir $dst_dir </screen> diff --git a/fml/doc/ja/tutorial/usage/command.sgml b/fml/doc/ja/tutorial/usage/command.sgml index c62dfaf5..48e7d70e 100644 --- a/fml/doc/ja/tutorial/usage/command.sgml +++ b/fml/doc/ja/tutorial/usage/command.sgml @@ -1,5 +1,5 @@ <!-- - $FML: command.sgml,v 1.6 2002/09/28 14:14:07 fukachan Exp $ + $FML: command.sgml,v 1.7 2003/04/15 14:51:46 fukachan Exp $ --> <sect1 id="fml.command.bymail"> @@ -25,10 +25,10 @@ makefml を使えるということは、MLサーバのホストのシェルが取れている、 </para> <para> -一方、コマンドメールなどでユーザに提供されているコマンド操作は makefml -で可能な操作のごく一部です。つまり、コマンドメールとは makefml のコマ -ンドの一部を使えなくし、適宜 confirmation を付け加えたコマンド体系といっ -てよいでしょう。 +一方、コマンドメールなどで一般ユーザに提供する機能は制限するべきです。 +実際、ユーザに提供されているコマンド操作は makefml で可能な操作のごく +一部です。つまり、コマンドメールとは makefml のコマンドの一部を使えな +くし、適宜 confirmation を付け加えたコマンド体系といってよいでしょう。 </para> </important> @@ -80,3 +80,5 @@ CGI でのコマンド処理 </sect2> </sect1> + + diff --git a/fml/doc/ja/tutorial/usage/fmladdr.sgml b/fml/doc/ja/tutorial/usage/fmladdr.sgml index cdf4b36e..33475ea3 100644 --- a/fml/doc/ja/tutorial/usage/fmladdr.sgml +++ b/fml/doc/ja/tutorial/usage/fmladdr.sgml @@ -1,10 +1,10 @@ <!-- - $FML: fmladdr.sgml,v 1.4 2002/07/28 06:26:58 fukachan Exp $ + $FML: fmladdr.sgml,v 1.1 2002/11/09 14:16:19 fukachan Exp $ --> <sect1 id="usage.fmladdr"> <title> - 設定を表示する (fmladdr コマンド) + アドレス一覧を表示する (fmladdr コマンド) </title> <para> diff --git a/fml/doc/ja/tutorial/usage/fmlalias.sgml b/fml/doc/ja/tutorial/usage/fmlalias.sgml index eb41f887..e8bb32b3 100644 --- a/fml/doc/ja/tutorial/usage/fmlalias.sgml +++ b/fml/doc/ja/tutorial/usage/fmlalias.sgml @@ -1,10 +1,10 @@ <!-- - $FML: fmlalias.sgml,v 1.4 2002/07/28 06:26:58 fukachan Exp $ + $FML: fmlalias.sgml,v 1.1 2002/11/09 14:16:19 fukachan Exp $ --> <sect1 id="usage.fmlalias"> <title> - 設定を表示する (fmlalias コマンド) + エイリアスの一覧を表示する (fmlalias コマンド) </title> <para> diff --git a/fml/doc/ja/tutorial/usage/makefml.sgml b/fml/doc/ja/tutorial/usage/makefml.sgml index 9608fee2..ded99f97 100644 --- a/fml/doc/ja/tutorial/usage/makefml.sgml +++ b/fml/doc/ja/tutorial/usage/makefml.sgml @@ -1,5 +1,5 @@ <!-- - $FML: makefml.sgml,v 1.6 2002/07/28 23:33:43 fukachan Exp $ + $FML: makefml.sgml,v 1.7 2003/04/15 14:51:46 fukachan Exp $ --> @@ -200,12 +200,21 @@ off の反対 % makefml list elena recipient </screen> は受信者のリストを表示します。 -この形式でいいのか疑問なんですが… </para> -<!-- - XXX-TODO この形式でいいのか疑問なんですが… (makefml list elena recipient) ---> +<para> +実際には、config.cf で利用可能な任意のマップの表示が可能です。 +<screen> +% makefml list elena MAP名 +</screen> +なお、長い変数名を打ち込むのも大変なので、 +primary_xxx_map や +xxx_maps は +<screen> +% makefml list elena xxx +</screen> +と省略しても良いことになっています。 +</para> </sect1> @@ -230,8 +239,8 @@ config.cf などをエディタで編集して下さい。 <warning> <para> -fml 管理者は(当然:-)、 -リモート管理のための諸設定をすることができます。 +makefml を使える管理者が一番偉い人です。当然:-)、 +(より権限の弱い)リモート管理のための諸設定をすることができます。 </para> </warning> diff --git a/fml/doc/ja/tutorial/usage/post.sgml b/fml/doc/ja/tutorial/usage/post.sgml index 0f4d8c64..13250e5a 100644 --- a/fml/doc/ja/tutorial/usage/post.sgml +++ b/fml/doc/ja/tutorial/usage/post.sgml @@ -1,5 +1,5 @@ <!-- - $FML: post.sgml,v 1.6 2002/09/28 14:14:07 fukachan Exp $ + $FML: post.sgml,v 1.7 2003/04/15 14:51:46 fukachan Exp $ --> <sect1 id="usage.post"> @@ -81,20 +81,25 @@ fml ブートローダ <para> -libexec/loader は etc/fml/main.cf を読みこみます。 -fml_version 変数から使うべきライブラリのバージョンを決めます。 -例えば fml_vesrion が current-20010501 となっていたら -/usr/local/lib/fml/current-20010501/ 以下にあるライブラリを使うといった -具合です。 +/usr/local/libexec/loader は /usr/local/etc/fml/main.cf を読みこみます。 +fml_version 変数から使うべきライブラリのバージョンを決めます。例えば +fml_vesrion が current-20010501 となっていたら +/usr/local/lib/fml/current-20010501/ 以下にあるライブラリを使うといっ +た具合です。 </para> <para> -@INC を設定した後、 -loader は FML::Process::Switch をロードし、 -$0 を調べます。 -その名前から自分の仕事は配送処理だと知ります。 -配送処理なので -FML::Process::Distribute をロードし、配送処理に移ります。 +@INC を設定した後、loader (/usr/local/libexec/fml/distribute の実体) +は FML::Process::Switch をロードし、$0 を調べます。その名前から自分の +仕事は配送処理だと知ります。 +</para> + +<para> +loader は /usr/local/etc/fml/defaults/バージョン/modules ファイルを調べ、 +ロードするべきモジュールが +FML::Process::Distribute +だと知ります。 +最後に、このクラスをロードし、配送処理に移ります。 </para> </sect2> diff --git a/fml/doc/ja/tutorial/virtual/chapter.sgml b/fml/doc/ja/tutorial/virtual/chapter.sgml index 06f27c3b..ffc7691e 100644 --- a/fml/doc/ja/tutorial/virtual/chapter.sgml +++ b/fml/doc/ja/tutorial/virtual/chapter.sgml @@ -1,5 +1,5 @@ <!-- - $FML: chapter.sgml,v 1.2 2003/04/15 14:51:47 fukachan Exp $ + $FML: chapter.sgml,v 1.3 2003/11/24 04:44:58 fukachan Exp $ --> <chapter id="virtualdomain"> @@ -133,7 +133,7 @@ http://lists/~fml/cgi-bin/fml/$domain/admin/config.cgi <para> 解決しないといけない問題はディレクトリのパスが変わること。 -/etc/fml/ の変更だけで解決できないか? +/usr/local/etc/fml/ の変更だけで解決できないか? いや、include ファイルがこんな風になっているが、 <screen> |
