summaryrefslogtreecommitdiff
path: root/fml/doc/ja/tutorial/internals
diff options
context:
space:
mode:
authorfukachan <fukachan>2002-07-02 10:39:28 +0000
committerfukachan <fukachan>2002-07-02 10:39:28 +0000
commitb753b70a78a0ec9b5e82d37a8db6735ca59cfc4c (patch)
tree706989986f84f0ef077a6616f520c61a8dee1606 /fml/doc/ja/tutorial/internals
parentd5fb6f177372244aefa3b7156a97132959a4956d (diff)
downloadfml8-b753b70a78a0ec9b5e82d37a8db6735ca59cfc4c.tar.gz
fml8-b753b70a78a0ec9b5e82d37a8db6735ca59cfc4c.tar.bz2
fml8-b753b70a78a0ec9b5e82d37a8db6735ca59cfc4c.zip
updated to sync w/ current
clean up the structure to catch up "fml bible" structure
Diffstat (limited to 'fml/doc/ja/tutorial/internals')
-rw-r--r--fml/doc/ja/tutorial/internals/bootloader.sgml13
-rw-r--r--fml/doc/ja/tutorial/internals/cgi.sgml13
-rw-r--r--fml/doc/ja/tutorial/internals/config.cf.sgml14
-rw-r--r--fml/doc/ja/tutorial/internals/design.sgml18
-rw-r--r--fml/doc/ja/tutorial/internals/list.variables.sgml9
-rw-r--r--fml/doc/ja/tutorial/internals/main.cf.sgml73
-rw-r--r--fml/doc/ja/tutorial/internals/style.sgml19
7 files changed, 98 insertions, 61 deletions
diff --git a/fml/doc/ja/tutorial/internals/bootloader.sgml b/fml/doc/ja/tutorial/internals/bootloader.sgml
index 12f84adf..32434bfa 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.5 2002/03/18 13:34:36 fukachan Exp $
+ $FML: bootloader.sgml,v 1.6 2002/04/01 23:41:03 fukachan Exp $
-->
<chapter id="bootloader">
@@ -9,7 +9,7 @@
<para>
-fml 5.0 にはインストールされている fml のバージョン依存性を考慮するた
+&fmldevel; にはインストールされている fml のバージョン依存性を考慮するた
めに、実行時には本章で述べるようなブートストラップの過程があります。
<screen>
@@ -32,7 +32,7 @@ loader から次々と呼ばれていく様子は、例えば配送処理の場合、次のよう
</para>
<para>
-libexec/loader は /etc/fml/main.cf を読みこみます。
+libexec/loader は /usr/local/etc/fml/main.cf を読みこみます。
fml_version 変数から使うべきライブラリのバージョンを決めます。
例えば fml_vesrion が current-20010501 となっていたら
/usr/local/lib/fml/current-20010501/ 以下にあるライブラリを使うといった
@@ -73,11 +73,6 @@ FML::Process::Mead >-| |
|-use-a ... その他 ...
</screen>
-=&gt;
-<ulink url="../../../fml/lib/FML/Process/programs.ja.html">
-FML::Process::それぞれのプログラムのモジュールについて
-</ulink>
-
</para>
</sect1>
@@ -102,7 +97,7 @@ FML::Process::それぞれのプログラムのモジュールについて
<itemizedlist>
<listitem>
<para>
- /etc/fml/main.cf を読み込む。
+ /usr/local/etc/fml/main.cf を読み込む。
読み込むと fml のバージョンが分かる。
default_config.cf はバージョン依存であるので、
ここでまずバージョンを評価しなければいけないことに注意。
diff --git a/fml/doc/ja/tutorial/internals/cgi.sgml b/fml/doc/ja/tutorial/internals/cgi.sgml
index fe084a32..681964d6 100644
--- a/fml/doc/ja/tutorial/internals/cgi.sgml
+++ b/fml/doc/ja/tutorial/internals/cgi.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: cgi.sgml,v 1.4 2002/03/19 04:48:54 fukachan Exp $
+ $FML: cgi.sgml,v 1.5 2002/04/01 23:41:03 fukachan Exp $
-->
<chapter id="internal.cgi">
@@ -17,7 +17,12 @@
FML::CGI のクラスは以下の3つのメソッドを実装して下さい。
<screen>
html_start()
-run_cgi()
+run_cgi_main()
+run_cgi_title()
+run_cgi_navigator()
+run_cgi_menu()
+run_cgi_command_help()
+run_cgi_options()
html_end()
</screen>
ここで
@@ -32,7 +37,7 @@ run_cgi() メソッドでは BODY の部分を表示してください。
$curproc の run() メソッドは
<screen>
html_start()
-run_cgi()
+run_cgi_XXX() 群を実行(テーブル状に出力を配置する)
html_end()
</screen>
を順番に実行しています。
@@ -43,7 +48,7 @@ prepare()
verify_request()
run()
html_start()
- run_cgi()
+ run_cgi_○○()
html_end()
finish()
</screen>
diff --git a/fml/doc/ja/tutorial/internals/config.cf.sgml b/fml/doc/ja/tutorial/internals/config.cf.sgml
index 80459a83..f855a0df 100644
--- a/fml/doc/ja/tutorial/internals/config.cf.sgml
+++ b/fml/doc/ja/tutorial/internals/config.cf.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: config.cf.sgml,v 1.5 2001/11/24 06:54:46 fukachan Exp $
+ $FML: config.cf.sgml,v 1.6 2002/04/01 23:41:03 fukachan Exp $
-->
<chapter>
@@ -12,7 +12,7 @@
<para>
各MLごとにさまざまなカスタマイズをすることができます。
-この点は &fml4; でも &fml5; でも同様です。
+この点は &fml4; でも &fmldevel; でも同様です。
</para>
<para>
@@ -24,11 +24,9 @@
<para>
この perl script 方式にはいくつか問題があります。
例えば perl script なので、perl が許す限りの自由な書き方ができます。
-これは config.ph の最大の問題です。
+これは人間にとっては嬉しいのですが、
+機械処理の観点からは問題です。というのは
makefml や CGI をはじめとする設定インターフェイスを書きにくいのです。
-</para>
-
-<para>
そこで &fml4; では、
cf というファイルと config.ph という
2 つのフォーマットの異なるファイルが使われています。
@@ -37,8 +35,8 @@ cf というファイルと config.ph という
<para>
しかし、これはこれで2つのファイルに分かれてしまう点が
保守しにくさを生みます。
-よって &fml5; では、設定インターフェイスにやさしい
-新フォーマットを提唱します。
+よって &fmldevel; では、
+設定インターフェイスにやさしい新フォーマットを提唱します。
それが config.cf です。
これは本質的に postfix 風のフォーマットです。
</para>
diff --git a/fml/doc/ja/tutorial/internals/design.sgml b/fml/doc/ja/tutorial/internals/design.sgml
index 694365b2..9c51afb2 100644
--- a/fml/doc/ja/tutorial/internals/design.sgml
+++ b/fml/doc/ja/tutorial/internals/design.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: design.sgml,v 1.5 2002/02/16 10:08:35 fukachan Exp $
+ $FML: design.sgml,v 1.6 2002/04/01 23:41:03 fukachan Exp $
-->
<chapter id="design">
@@ -21,8 +21,8 @@
<ulink url="http://www.fml.org/devel/">
fml-devel
</ulink>
-とも呼ばれている fml 5.0 プロジェクトは、
-fml 4.0 の再構想(refactoring)とその実装(例)の構築
+とも呼ばれている &fmldevel; プロジェクトは、
+&fml4; の再構想(refactoring)とその実装(例)の構築
を行なっています。
</PARA>
@@ -35,8 +35,8 @@ http://www.fml.org/devel/
<para>
-現状の fml-devel は fml 5.0 のアイデアを募るための、
-fml 5.0 のアルファ版のアルファ版のアルファ版
+現状の fml-devel は &fmldevel; のアイデアを募るための、
+&fmldevel; のアルファ版のアルファ版のアルファ版
もしくは
プロトタイプ
とでもいうべきものです。ですが、すでに動く実装例をダウンロードできます
@@ -51,7 +51,7 @@ fml 5.0 のアルファ版のアルファ版のアルファ版
</PARA>
<para>
-ものによっては fml 5.0 用に作られたモジュールを fml 4.0 へ
+ものによっては &fmldevel; 用に作られたモジュールを &fml4; へ
輸入/輸出することも検討しています。
たとえば 4.0 でも独立性の高い mead (エラーメール解析プログラム)などは
その良い例だろうし、新機能を提供するモジュールなども再輸入(輸出)可能な
@@ -59,12 +59,12 @@ fml 5.0 のアルファ版のアルファ版のアルファ版
</PARA>
<para>
-これらのマージおよび 4.0 自体のコードの保守をしつつ 4.0 および 5.0 は
+これらのマージおよび 4.0 自体のコードの保守をしつつ 4.0 および &fmldevel; は
並行開発されていく予定です。
そのため 4.0 系は stable に近い current という位置付けになります。
そして 4.0 の bug fix は 4.0.x (4.0.1 4.0.2 …)としてまとめられリリー
スれていく予定です。
-逆に 5.0 は本当の開発用のコード( fml-current )ということになります。
+逆に &fmldevel; は本当の開発用のコード( fml-current )ということになります。
</PARA>
</sect1>
@@ -86,7 +86,7 @@ fml 5.0 のアルファ版のアルファ版のアルファ版
<listitem>
<para>
- 全部 perl module 形式 (要 5.004 以降)
+ 全部 perl module 形式 (要 &fmldevel;04 以降)
</para>
</listitem>
diff --git a/fml/doc/ja/tutorial/internals/list.variables.sgml b/fml/doc/ja/tutorial/internals/list.variables.sgml
index 853f7925..298459c9 100644
--- a/fml/doc/ja/tutorial/internals/list.variables.sgml
+++ b/fml/doc/ja/tutorial/internals/list.variables.sgml
@@ -712,6 +712,15 @@ admin
</row>
<row>
<entry>
+qmail_virtual_map_file</entry>
+<entry>
+ MTA に教えるための virtual map ファイル(テンプレート)</entry>
+<entry>
+$domain_qmail_config_dir/virtualdomains
+ </entry>
+</row>
+<row>
+<entry>
qmail_virtualdomains_file</entry>
<entry>
virtual domain configurations for qmail</entry>
diff --git a/fml/doc/ja/tutorial/internals/main.cf.sgml b/fml/doc/ja/tutorial/internals/main.cf.sgml
index 4025ea5a..557368c2 100644
--- a/fml/doc/ja/tutorial/internals/main.cf.sgml
+++ b/fml/doc/ja/tutorial/internals/main.cf.sgml
@@ -1,73 +1,88 @@
<!--
- $FML: main.cf.sgml,v 1.2 2001/05/10 03:11:43 fukachan Exp $
+ $FML: main.cf.sgml,v 1.3 2002/04/01 23:41:03 fukachan Exp $
-->
<sect1 id="main.cf">
-<title> /etc/fml/main.cf </title>
+ <title>
+ /etc/fml/main.cf
+ </title>
<para>
/etc/fml/main.cf は各MLの設定ではありません。
-これは、バージョン依存性を解決するための設定ファイルです。
-fml のプログラム群が起動する時に参照します。
+これは、fml のバージョンなどメタレベルの依存性を解決するための設定ファ
+イルで、fml のプログラム群が起動する時に参照します。
</para>
<para>
-main.cf はこのようなファイルです。
-
-フォーマットは
+main.cf のフォーマットは他の .cf と同様
+<footnote>
+<para>
+実際のところファイル拡張子とファイルフォーマットには相関があります。
+</para>
+</footnote>
+に
<screen>
変数名 = 値
</screen>
です。
<screen>
+#
+# $FML: main.cf.in,v 1.12 2002/04/01 23:41:09 fukachan Exp $
+#
+
# fml version
# This is important
# Example: fml 5.0
# fml-current YYYYMMDD
# fml-devel YYYYMMDD
-fml_version = current-20010423
+fml_version = current-20020701
+
+fml_owner = fml
+
+fml_group = fml
###
### DIRECTORIES
###
+# Example: /usr/local
+prefix = /usr/local
+exec_prefix = ${prefix}
# $config_dir holds the global main configuration and
# several version-dependent default configurations
# Example: /etc/fml
-config_dir = /etc/fml
+config_dir = /etc/fml
# Example: /etc/fml/defaults/$fml_version
-default_config_dir = $config_dir/defaults/$fml_version
-
-# Example: /usr/local
-default_prefix = /usr/local
-
+default_config_dir = $config_dir/defaults/$fml_version
+# defined for convenience, for example, we need this variable
+# at include, include-ctl, which needs expansion of ../libexec/fml/fml.pl
# Example: /usr/local/libexec/fml
-libexec_prefix = $default_prefix
-
-# Example: /usr/local/lib/fml
-lib_prefix = $default_prefix
+executable_prefix = ${exec_prefix}/libexec/fml
# Example: /usr/local/libexec/fml/$fml_version
-libexec_dir = $libexec_prefix/libexec/fml/$fml_version
+libexec_dir = ${exec_prefix}/libexec/fml/$fml_version
# Example: /usr/local/lib/fml/$fml_version
-lib_dir = $lib_prefix/lib/fml/$fml_version
+lib_dir = ${exec_prefix}/lib/fml/$fml_version
+
+# Example: /usr/local/share/fml/$fml_version
+share_dir = ${prefix}/share/fml/$fml_version
# site local library location
# which is prepared but not used by fml itself
-local_lib_dir = $default_prefix/lib/fml/site_local
+local_lib_dir = ${exec_prefix}/lib/fml/site_local
# ml's home directories
# $ml_home_dir (e.g. /var/spool/ml/elena ) is taken from loader's @ARGV.
# This is compatible with fml 4.0.
# Example: /var/spool/ml
-ml_home_prefix = /var/spool/ml
+default_ml_home_prefix = /var/spool/ml
@@ -77,18 +92,26 @@ ml_home_prefix = /var/spool/ml
# default domain
-default_domain = fml.org
+default_domain = fml.org
# version dependent default_config.cf location
# whic holds
# Example: /etc/fml/defaults/5.0/default_config.cf
-default_config = $config_dir/defaults/$fml_version/default_config.cf
+default_config_cf = $default_config_dir/default_config.cf
# domain specific configurations
# Example: /etc/fml/domains/fml.org/default_config.cf
-domain_default_config = $config_dir/domains/$default_domain/config.cf
+domain_default_config = $config_dir/domains/$default_domain/config.cf
+
+
+# virtual format: domain directory
+# for example,
+# fml.org /var/spool/ml/fml.org
+# nuinui.net /var/spool/ml/nuinui.net
+virtual_maps = $config_dir/virtual
+
</screen>
</para>
</sect1>
diff --git a/fml/doc/ja/tutorial/internals/style.sgml b/fml/doc/ja/tutorial/internals/style.sgml
index 29aaa547..8459dcbf 100644
--- a/fml/doc/ja/tutorial/internals/style.sgml
+++ b/fml/doc/ja/tutorial/internals/style.sgml
@@ -1,10 +1,11 @@
<!--
- $FML: style.sgml,v 1.3 2002/04/01 23:41:04 fukachan Exp $
+ $FML: style.sgml,v 1.4 2002/05/27 09:00:28 fukachan Exp $
-->
<chapter id="programingstyle">
-
-<TITLE>プログラミング・スタイル</TITLE>
+ <TITLE>
+ プログラミング・スタイル
+ </TITLE>
<para>
ここでは、プログラミング上のいくつかの諸問題についてまとめます。
@@ -86,10 +87,16 @@ use_変数 = yes/no
<!-- ==================================================== -->
<sect1>
+ <title>
+ プログラミング・スタイル (原案のメモ(注: 単なる走り書き))
+ </title>
+
+<warning>
+<para>
+ログとして、原案のメモ(注: 単なる走り書き)をここに記録しておきます。
+</para>
+</warning>
-<title>
-プログラミング・スタイル (原案のメモ(注: 単なる走り書き))
-</title>
<para>
<itemizedlist>