summaryrefslogtreecommitdiff
path: root/fml
diff options
context:
space:
mode:
authorfukachan <fukachan>2001-05-31 12:32:17 +0000
committerfukachan <fukachan>2001-05-31 12:32:17 +0000
commitbfea574bd22062f71ab8280ea58d5ec3dfdddb3f (patch)
tree0a246fbe165dc42ba38329b6107ae8deea715704 /fml
parent3e5b1084f52cd3870bbe0bfc5c8cf11500fd451e (diff)
downloadfml8-bfea574bd22062f71ab8280ea58d5ec3dfdddb3f.tar.gz
fml8-bfea574bd22062f71ab8280ea58d5ec3dfdddb3f.tar.bz2
fml8-bfea574bd22062f71ab8280ea58d5ec3dfdddb3f.zip
add section on how should we treat language dependent error messages
Diffstat (limited to 'fml')
-rw-r--r--fml/doc/ja/tutorial/include/chapters.ent3
-rw-r--r--fml/doc/ja/tutorial/internals/errormessage.sgml97
-rw-r--r--fml/doc/ja/tutorial/internals/message.sgml4
3 files changed, 102 insertions, 2 deletions
diff --git a/fml/doc/ja/tutorial/include/chapters.ent b/fml/doc/ja/tutorial/include/chapters.ent
index a646fade..4d9aa93b 100644
--- a/fml/doc/ja/tutorial/include/chapters.ent
+++ b/fml/doc/ja/tutorial/include/chapters.ent
@@ -1,5 +1,5 @@
<!--
- $FML: chapters.ent,v 1.8 2001/05/17 00:47:36 fukachan Exp $
+ $FML: chapters.ent,v 1.9 2001/05/17 04:00:44 fukachan Exp $
-->
<!entity versin "1.1">
@@ -45,6 +45,7 @@
<!entity chapter.design SYSTEM "internals/design.sgml">
<!entity chapter.config.cf SYSTEM "internals/config.cf.sgml">
<!entity chapter.message SYSTEM "internals/message.sgml">
+<!entity sect.errormessage SYSTEM "internals/errormessage.sgml">
<!-- 開発 -->
diff --git a/fml/doc/ja/tutorial/internals/errormessage.sgml b/fml/doc/ja/tutorial/internals/errormessage.sgml
new file mode 100644
index 00000000..8a153c3b
--- /dev/null
+++ b/fml/doc/ja/tutorial/internals/errormessage.sgml
@@ -0,0 +1,97 @@
+<!--
+ $FML$
+-->
+
+<sect1>
+ <title> エラーメッセージを返す </title>
+
+<para>
+適宜、エラーメッセージを送信者に返す必要があります。
+それもエラーメッセージは言語依存です。
+何らかの形で言語変換をしてから送り出すわけです。
+</para>
+
+
+<!-- ===================================================== -->
+<sect2>
+ <title> fml 4.0 の場合 </title>
+
+<para>
+fml 4.0 では
+<screen>
+ Mesg(*e, キーワード, デフォルトのメッセージ, 変換に使う引数);
+</screen>
+の形で呼び出します。
+</para>
+
+<para>
+/usr/local/fml/messages/Japanese/
+以下にあるファイル群に対して、
+キーワード検索を行ないます。
+各ファイルにはカテゴリごとに分類されたキーワードとメッセージが
+定義されています。
+つまり各ファイルに複数のキーワードが定義されています。
+</para>
+
+<para>
+例えば、キーワードが not_found の場合、
+/usr/local/fml/messages/Japanese/kern
+の not_found という欄が該当します。
+</para>
+
+</sect2>
+
+
+
+<!-- ===================================================== -->
+<sect2>
+ <title> fml 5.0 はどうするべきか? </title>
+
+<para>
+一つのファイルに一つのキーワードを持つのと、
+カテゴリごとに複数のキーワードを持つのとどちらが
+カスタマイズしやすいのでしょうか?
+僕には良くわかりません。
+</para>
+
+<sect3>
+ <title>
+ X/Open Portability Guide Issue 4 Version 2 (``XPG4.2'')
+ </title>
+
+<para>
+XPG (X/Open の規格)を使う場合は
+<screen>
+catgets(catd, set_id, msg_id, char *s);
+</screen>
+で、LOCALE_○○ で指定された言語へ変換しています。
+ <footnote>
+ <para>
+ ここで s はデフォルトのメッセージとなります。
+ </para>
+ </footnote>
+例えば、次のような使い方をします。
+<example>
+<screen>
+printf(catgets(catd, 30, 4, "%s: Internal match error.\n"), progname);
+</screen>
+</example>
+この時、
+locale の定義ファイル(
+例: /usr/pkg/share/nls/ja_JP.EUC/プログラム名.cat
+)
+の中の se 30、エントリ 4 のメッセージに変換してくれます。
+</para>
+
+</sect3>
+
+<sect3>
+ <title>
+ </title>
+
+</sect3>
+
+
+</sect2>
+
+</sect1>
diff --git a/fml/doc/ja/tutorial/internals/message.sgml b/fml/doc/ja/tutorial/internals/message.sgml
index d65cee19..2a4f3c74 100644
--- a/fml/doc/ja/tutorial/internals/message.sgml
+++ b/fml/doc/ja/tutorial/internals/message.sgml
@@ -1,5 +1,5 @@
<!--
- $FML: message.sgml,v 1.2 2001/05/07 03:16:24 fukachan Exp $
+ $FML: message.sgml,v 1.3 2001/05/17 04:25:33 fukachan Exp $
-->
<chapter id="message">
@@ -87,4 +87,6 @@ MIME::Lite クラスへ
</sect1>
+&sect.errormessage;
+
</chapter>