summaryrefslogtreecommitdiff
path: root/fml/doc/ja
diff options
context:
space:
mode:
authorfukachan <fukachan>2004-02-26 10:36:04 +0000
committerfukachan <fukachan>2004-02-26 10:36:04 +0000
commitb2a7a24cdc55e577437e608d3dbb9f6b365606ea (patch)
tree31d5cc218e014cd6df94bb6a97f09e8b775d4c74 /fml/doc/ja
parentb7d7c4d7a9b1e6124e95969da914b77d3f72514c (diff)
downloadfml8-b2a7a24cdc55e577437e608d3dbb9f6b365606ea.tar.gz
fml8-b2a7a24cdc55e577437e608d3dbb9f6b365606ea.tar.bz2
fml8-b2a7a24cdc55e577437e608d3dbb9f6b365606ea.zip
add chapter on language handling
Diffstat (limited to 'fml/doc/ja')
-rw-r--r--fml/doc/ja/tutorial/book.sgml3
-rw-r--r--fml/doc/ja/tutorial/include/chapters.ent4
-rw-r--r--fml/doc/ja/tutorial/internals/language.sgml220
3 files changed, 225 insertions, 2 deletions
diff --git a/fml/doc/ja/tutorial/book.sgml b/fml/doc/ja/tutorial/book.sgml
index 680aba95..6258acb0 100644
--- a/fml/doc/ja/tutorial/book.sgml
+++ b/fml/doc/ja/tutorial/book.sgml
@@ -2,7 +2,7 @@
This is an sgml using DocBook dtd. Use sgmltools version 2.0.x or above
to generate various output formats.
-$FML: book.sgml,v 1.59 2003/11/25 04:18:32 fukachan Exp $
+$FML: book.sgml,v 1.60 2003/11/29 12:51:35 fukachan Exp $
-->
<!doctype book public "-//FML//DTD DocBook V3.1-Based Extension//EN" [
@@ -146,6 +146,7 @@ $FML: book.sgml,v 1.59 2003/11/25 04:18:32 fukachan Exp $
<!-- 記事の配送とコマンドの処理 -->
&chapter.delivery;
&chapter.digest;
+ &chapter.language;
&chapter.message;
&chapter.filter;
<!-- &chapter.replybyfml; -->
diff --git a/fml/doc/ja/tutorial/include/chapters.ent b/fml/doc/ja/tutorial/include/chapters.ent
index 7ada7f75..e1d433ab 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.80 2003/12/21 03:19:13 fukachan Exp $
+ $FML: chapters.ent,v 1.81 2003/12/21 14:23:10 fukachan Exp $
-->
<!entity versin "1.1">
@@ -145,6 +145,8 @@
<!entity chapter.lock SYSTEM "internals/lock.sgml">
<!entity chapter.io.abstraction SYSTEM "internals/io_abstraction.sgml">
<!entity chapter.errormail SYSTEM "internals/errormail.sgml">
+<!entity chapter.language SYSTEM "internals/language.sgml">
+
<!entity chapter.virtual SYSTEM "virtual/chapter.sgml">
diff --git a/fml/doc/ja/tutorial/internals/language.sgml b/fml/doc/ja/tutorial/internals/language.sgml
new file mode 100644
index 00000000..00f7a3be
--- /dev/null
+++ b/fml/doc/ja/tutorial/internals/language.sgml
@@ -0,0 +1,220 @@
+<!--
+ $FML$
+-->
+
+
+<chapter id="language.preference">
+ <title>
+ 言語処理の優先順位
+ </title>
+
+
+<sect1 id="language.preference.overview">
+ <title>
+ 言語処理の諸問題
+ </title>
+
+<para>
+一番単純なモデルは、「このMLは日本人用」と設定してあるならメッセージ
+は常に日本語で返すというものです。
+ML作成時に何言語用かを指定する必要があります。
+</para>
+
+<para>
+しかしながら、日本人だからといって、今、メールを読んでいる環境で日本語
+が使えないかも知れないし、Accept-Language: を無視するのもよろしくあり
+ません。とはいえ、みんながちゃんとAccept-Language:をつけているわけでは
+ないので、問題はいろいろと山積みです。
+</para>
+
+<para>
+たとえば、Accept-Language: ja などとしてある場合はja が優先だと分かり
+ます。しかしながら、そういったものがなく、かつ、「日本人が help という
+メールを送ってきた」場合、返事を us-ascii なのか iso-2022-jp で返すべ
+きなのか?が、プログラムには良く分かりません。
+<screen>
+例:
+
+From: rudo@example.co.jp
+Subject: help
+mime-version: 1.0
+content-type: text/plain; charset=us-ascii
+
+help
+</screen>
+</para>
+
+<para>
+charsetを素直に考えると、英語で返すべきですが、これは本文が英語だけな
+のでcharset=us-asciiになっているだけです。しょうがないので、このMLが
+(日本人相手のため)日本語優先と設定されているなら、日本語と英語のメッセー
+ジ両方を返すべきでしょう。英語のMLなら、英語を返すだけでいいです。
+</para>
+
+<para>
+逆に、Accept-Lanaguage: が指定されていれば、それを尊重するべきです。英
+語のML(language_preference_order = en)の場合でも、Accept-Lanaguage:
+ja なら(できるだけ)日本語で返事をするべきでしょう。
+標準のメッセージであれば、このサポートは可能なので、優先するべきでしょう。
+</para>
+
+</sect1>
+
+
+<sect1 id="language.preference.ml.ja">
+ <title>
+ 日本語のML
+ </title>
+
+<para>
+language_preference_order という変数があります。
+これが、次のように指定されています。
+<screen>
+language_preference_order = ja en
+</screen>
+このヒントを使い、以下のように処理をするようにしています。
+</para>
+
+
+<sect2>
+ <title>
+ Accept-Language: ja, en
+ </title>
+
+<para>
+日本語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: en
+ </title>
+
+<para>
+英語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: では charset=iso-2022-jp
+ </title>
+
+<para>
+日本語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: では charset=us-ascii
+ </title>
+
+<para>
+日本語(だけ)で返していいと判断できない。
+日本語と英語のコンビで返すべきだとおもう。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: もなし
+ </title>
+
+<para>
+日本語(だけ)で返していいと判断できない。
+日本語と英語のコンビで返すべきだとおもう。
+</para>
+
+</sect2>
+
+</sect1>
+
+
+<sect1 id="language.preference.ml.en">
+ <title>
+ 英語のML
+ </title>
+
+<para>
+language_preference_order という変数があります。
+これが、次のように指定されています。
+<screen>
+language_preference_order = en
+</screen>
+このヒントを使い、以下のように処理をするようにしています。
+</para>
+
+
+<sect2>
+ <title>
+ Accept-Language: ja, en
+ </title>
+
+<para>
+日本語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: en
+ </title>
+
+<para>
+英語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: では charset=iso-2022-jp
+ </title>
+
+<para>
+日本語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: では charset=us-ascii
+ </title>
+
+<para>
+英語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+
+<sect2>
+ <title>
+ Accept-Language: はなし、Content-Type: もなし
+ </title>
+
+<para>
+英語(だけ)で返すと判断する。
+</para>
+
+</sect2>
+
+</sect1>
+
+
+</chapter>