summaryrefslogtreecommitdiff
path: root/fml/doc/en/tutorial/module
diff options
context:
space:
mode:
authorfukachan <fukachan>2005-09-28 11:05:48 +0000
committerfukachan <fukachan>2005-09-28 11:05:48 +0000
commit8ff58391fa2519616abc3fdc8929f9c8cafbb9a0 (patch)
tree17a189889db62f1608b4e92023f320153bf0f976 /fml/doc/en/tutorial/module
parentd4c6b7a0d8d7d8d7bfffee7d1f2d8c15950bc194 (diff)
downloadfml8-8ff58391fa2519616abc3fdc8929f9c8cafbb9a0.tar.gz
fml8-8ff58391fa2519616abc3fdc8929f9c8cafbb9a0.tar.bz2
fml8-8ff58391fa2519616abc3fdc8929f9c8cafbb9a0.zip
clean up
Diffstat (limited to 'fml/doc/en/tutorial/module')
-rw-r--r--fml/doc/en/tutorial/module/IO.sgml45
-rw-r--r--fml/doc/en/tutorial/module/Message.sgml34
-rw-r--r--fml/doc/en/tutorial/module/create.sgml28
-rw-r--r--fml/doc/en/tutorial/module/encode.sgml8
-rw-r--r--fml/doc/en/tutorial/module/nativelanguage.sgml8
5 files changed, 64 insertions, 59 deletions
diff --git a/fml/doc/en/tutorial/module/IO.sgml b/fml/doc/en/tutorial/module/IO.sgml
index 1db6a7bc..ed326efb 100644
--- a/fml/doc/en/tutorial/module/IO.sgml
+++ b/fml/doc/en/tutorial/module/IO.sgml
@@ -1,17 +1,17 @@
<!--
- $FML: IO.sgml,v 1.1 2003/07/28 10:41:30 fukachan Exp $
+ $FML: IO.sgml,v 1.2 2003/08/03 01:47:17 fukachan Exp $
$jaFML: IO.sgml,v 1.4 2003/04/15 14:51:42 fukachan Exp $
-->
<chapter id="module.io.adapter">
<title>
- IO abstraction layer (IO::Adapter class)
+ IO Abstraction Layer (IO::Adapter Class)
</title>
<sect1 id="module.io.adapter.overview">
<title>
- IO::Adapter overview
+ IO::Adapter Overview
</title>
<para>
@@ -35,8 +35,8 @@ file:/var/spool/ml/elena/recipients
unix.group:root
nis.group:root
mysql:id
-postgresql:id (not yet implemented)
-ldap:id (not yet implemented)
+postgresql:id
+ldap:id
</screen>
</para>
@@ -55,7 +55,7 @@ IO::Adapter".
<sect1 id="module.io.adapter.methods">
<title>
- IO::Adapter methods
+ IO::Adapter Methods
</title>
<para>
@@ -103,14 +103,14 @@ between &fml4; and &fml8; but it is mandatory for further abstraction.
<sect1>
<title>
- Argument type of methods
+ Argument Type Of Methods
</title>
<para>
-The argument needs nothing or STR as the argument and the return value
-is STR. get_next_key() is typical as the no argument case. This method
-is used to list up the content of files or retrieve the specific
-address in the file.
+The argument needs nothing, STR or ARRAY_REF as the argument and the
+return value is STR. get_next_key() is typical as the no argument
+case. This method is used to list up the content of files or retrieve
+the specific address in the file.
</para>
<para>
@@ -122,7 +122,7 @@ KEY_STR => [
VALUE_STR_3
]
</screen>
-This is used as the return value to represent ARRAY. For example,
+This is used as the return value to represent ARRAY_REF. For example,
"actives" file of &fml4; consists of lines which have plural space
separeted entries. So it can be representated as a type of array.
<screen>
@@ -137,8 +137,13 @@ rudo@nuinui.net => [
</para>
<para>
+If retrieval value could be represented as ARRAY_REF, argument of
+store operations alsot needs ARRAY_REF.
+</para>
+
+<para>
It is summarized as follows.
-The argument is one of "nothing" or "STR".
+The argument is one of "nothing", "STR" or ARRAY_REF.
The return value is either of STR of ARRAY_REF (array reference).
<screen>
argument return value
@@ -158,7 +163,7 @@ STR => [STR, STR, ... ]
<sect1 id="module.io.adapter.map.file">
<title>
- File map
+ File Map
</title>
<para>
@@ -172,7 +177,7 @@ The format of text file is space separated.
<sect1 id="module.io.adapter.map.unixgroup">
<title>
- Unixgroup map
+ Unixgroup Map
</title>
<para>
@@ -204,7 +209,7 @@ kenken
<sect1 id="module.io.adapter.map.nis">
<title>
- NIS map
+ Nis Map
</title>
<para>
@@ -216,13 +221,13 @@ It is same as one of /etc/group but the data is retrieved from NIS/YP.
<sect1 id="module.io.adapter.map.mysql">
<title>
- MySQL map
+ MySQL Map
</title>
<para>
For easy maintenance, it is better to write all mysql configurations
in one file. For example, it is good that we have only to write SQL
-configuratinos in config.cf.
+configurations in config.cf.
</para>
<para>
@@ -274,12 +279,12 @@ method.
<sect2>
<title>
Discussion:
- How to write sql statements in config.cf ?
+ How To Write SQL Statements In config.cf ?
(fml-devel 204)
</title>
<para>
-How about lexical scope ? The .cf files cannot define all variables
+How about lexical scope ? The .cf files cannot contain all variables
since lexical scope variables exist.
We use &amp;varname syntax for such lexical scope variables.
</para>
diff --git a/fml/doc/en/tutorial/module/Message.sgml b/fml/doc/en/tutorial/module/Message.sgml
index 2d162867..2eeb8b45 100644
--- a/fml/doc/en/tutorial/module/Message.sgml
+++ b/fml/doc/en/tutorial/module/Message.sgml
@@ -1,16 +1,16 @@
<!--
- $FML: Message.sgml,v 1.1 2003/07/28 10:41:30 fukachan Exp $
+ $FML: Message.sgml,v 1.2 2003/08/03 01:47:17 fukachan Exp $
$jaFML: Message.sgml,v 1.2 2003/04/15 14:51:42 fukachan Exp $
-->
<chapter id="module.mail.message">
<title>
- Mail::Message module
+ Mail::Message Module
</title>
<sect1 id="module.mail.message.overview">
<title>
- Mail::Message overview
+ Mail::Message Overview
</title>
<para>
@@ -28,7 +28,7 @@ If not multipart
else if multipart
- header -> preamble -> part1 -> part2 -> trailor
+ header -> preamble -> part1 -> part2 -> ... -> trailor
</screen>
The link between objects is double link list. Mail::Message class
provides several methods to manipulate these structures.
@@ -59,7 +59,7 @@ Mail::Message module manual.
<sect1 id="module.mail.message.parse">
<title>
- Mail::Message module: analyze
+ Mail::Message Module: Analyze
</title>
<para>
@@ -91,7 +91,7 @@ the whole message (content-type in the mail header).
<sect1 id="module.mail.message.create">
<title>
- Mail::Message module: create a new object
+ Mail::Message Module: Create A New Object
</title>
<para>
@@ -120,7 +120,7 @@ is MIME::Lite class in fact :-)
<sect1 id="module.mail.message.headerop">
<title>
- Mail::Message module: header manipulations
+ Mail::Message Module: Header Manipulations
</title>
<para>
@@ -153,7 +153,7 @@ It tells whether this message is text or multipart.
<sect1 id="module.mail.message.bodyop">
<title>
- Mail::Message module: manipulate messabe body
+ Mail::Message Module: Manipulate Messabe Body
</title>
<para>
@@ -165,14 +165,14 @@ header -> body
else if multipart
-header -> preamble -> part1 -> part2 -> trailor
+header -> preamble -> part1 -> part2 -> ... -> trailor
</screen>
</para>
<para>
header_data_type() return the type of the whole type.
-It is the information from Content-Type: in the whole message header.
+It is known from Content-Type: in the whole message header.
</para>
<para>
@@ -191,7 +191,7 @@ system checks the first text field in a lot of cases.
<sect1 id="module.mail.message.search">
<title>
- Mail::Message module: search
+ Mail::Message Module: Search
</title>
<para>
@@ -204,7 +204,7 @@ chain and returns the first matched object.
<sect1 id="module.mail.message.print">
<title>
- Mail::Message module: print
+ Mail::Message Module: Print
</title>
<para>
@@ -224,7 +224,7 @@ codes.
<sect1 id="module.mail.message.utils">
<title>
- Mail::Message module: utility functions
+ Mail::Message Module: Utility Functions
</title>
<sect2>
@@ -248,7 +248,7 @@ is_empty() tells the object data is empty or not.
<sect2>
<title>
- General information
+ General Information
</title>
<para>
@@ -272,7 +272,7 @@ encoding mechanism.
<sect2>
<title>
- Mail::Message internals
+ Mail::Message Internals
</title>
<para>
@@ -288,7 +288,7 @@ Caution that N starts from 1 not 0.
<para>
-header() return the header part of a multipart block (header part of
+header() returns the header part of a multipart block (header part of
an object). data() returns the data part (data part of an object).
Respectively, alias of message_fields($size) and message_text($size).
</para>
@@ -300,7 +300,7 @@ Respectively, alias of message_fields($size) and message_text($size).
<sect1 id="module.mail.message.ref">
<title>
- Refernces
+ References
</title>
<para>
diff --git a/fml/doc/en/tutorial/module/create.sgml b/fml/doc/en/tutorial/module/create.sgml
index 30da7477..db0cdf25 100644
--- a/fml/doc/en/tutorial/module/create.sgml
+++ b/fml/doc/en/tutorial/module/create.sgml
@@ -1,11 +1,11 @@
<!--
- $FML: create.sgml,v 1.2 2003/08/03 01:47:17 fukachan Exp $
+ $FML: create.sgml,v 1.3 2005/07/20 10:39:17 fukachan Exp $
$jaFML: create.sgml,v 1.2 2003/04/15 14:51:42 fukachan Exp $
-->
<chapter id="module.create">
<title>
- Execise: create a new program
+ Execise: Create A New Program
</title>
@@ -18,19 +18,19 @@ framework. Here the program name is "fmlsch" and the cgi is
<sect1>
<title>
- Case study: create a fmlsch
+ Case Study: Create A fmlsch
</title>
<sect2>
<title>
- Step 1: add fmlsch into installer configuration
+ Step 1: Add fmlsch Into Installer Configuration
</title>
<para>
Prepare fml/bin/fmlsch.in,
add fmlsch into $bin_programs in fml/etc/install.cf.in.
-Run configreu to re-create fml/etc/install.cf.
+Run configure to re-create fml/etc/install.cf.
</para>
</sect2>
@@ -38,7 +38,7 @@ Run configreu to re-create fml/etc/install.cf.
<sect2>
<title>
- Step 2: build a module
+ Step 2: Build A Module
</title>
@@ -51,6 +51,7 @@ Import other libraries if needed.
For fmlsch we import
HTML-CalendarMonthSimple-1.02.tar.gz
from CPAN.
+See cpan/ directory.
</para>
<para>
@@ -62,13 +63,12 @@ Also, install Date-Calc if your system has not it.
<sect2>
<title>
- Step 3: modify FML::Process:: class
+ Step 3: Modify FML::Process:: Class
</title>
<para>
-FML::Demo::Calendar works mainly but we build the machanism how &fml8;
-loads and runs it. We modify FML::Process class for &fml8; bootloader
-to call FML::Demo::Calendar.
+FML::Demo::Calendar works mainly. We need to prepare FML::Process
+class for &fml8; bootloader to call FML::Demo::Calendar.
</para>
<para>
@@ -87,7 +87,7 @@ command line options parsed by Getopt::Long().
<para>
Create FML::Process::Calender module by copy-and-pasting other
-FML::Process:: modules :-) However fmlsch has only to contain least
+FML::Process:: modules :-) Though fmlsch has only to contain least
functions, you need to write FML::Process::Calender::run() method.
For undefined methods, fml loads FML::Process::Kernel functions
(inheritence).
@@ -100,13 +100,13 @@ For undefined methods, fml loads FML::Process::Kernel functions
<sect1>
<title>
- Case study: fmlsch.cgi
+ Case Study: fmlsch.cgi
</title>
<para>
-The way of hacking is similar to fmlsch. The differnce is that the
-target to modify is FML::CGI:: class. FML::CGI::Calender is a
+The way of hacking is similar to fmlsch. The differnce is the target
+to modify, which is FML::CGI:: class. FML::CGI::Calender is a
sub-class of FML::Process::CGI.
</para>
diff --git a/fml/doc/en/tutorial/module/encode.sgml b/fml/doc/en/tutorial/module/encode.sgml
index 370e48b4..8cfa0885 100644
--- a/fml/doc/en/tutorial/module/encode.sgml
+++ b/fml/doc/en/tutorial/module/encode.sgml
@@ -1,11 +1,11 @@
<!--
- $FML: encode.sgml,v 1.1 2003/07/28 10:41:31 fukachan Exp $
+ $FML: encode.sgml,v 1.2 2003/08/03 01:47:17 fukachan Exp $
$jaFML: encode.sgml,v 1.2 2003/04/15 14:51:42 fukachan Exp $
-->
<chapter id="module.mail.message.encode">
<title>
- Mail::Message::Encode class
+ Mail::Message::Encode Class
</title>
<para>
@@ -27,7 +27,7 @@
my $fp = sub { ... };
$encode->run_in_chcode( $fp, $oout, $in );
- * 4.0 compatible functions are available.
+ * If you want to use 4.0 compatible functions,
ues Mail::Message::Encode qw(STR2EUC);
my $euc_s = STR2EUC( $s );
</screen>
@@ -35,7 +35,7 @@
<sect1>
<title>
- Mail::Message::Encode specification
+ Mail::Message::Encode Specification
</title>
<para>
diff --git a/fml/doc/en/tutorial/module/nativelanguage.sgml b/fml/doc/en/tutorial/module/nativelanguage.sgml
index 6252870c..d9faae91 100644
--- a/fml/doc/en/tutorial/module/nativelanguage.sgml
+++ b/fml/doc/en/tutorial/module/nativelanguage.sgml
@@ -1,15 +1,15 @@
<!--
- $FML: nativelanguage.sgml,v 1.1 2003/07/28 15:20:18 fukachan Exp $
+ $FML: nativelanguage.sgml,v 1.2 2003/08/03 01:47:17 fukachan Exp $
$jaFML: nativelanguage.sgml,v 1.3 2003/04/15 14:51:43 fukachan Exp $
-->
<chapter>
<title>
- Language dependent functions
+ Language Dependent Functions
</title>
<para>
-Fml needs language dependent functions internally. Especially, JIS
+&fml8; needs language dependent functions internally. Especially, JIS
to/from EUC-JP Janapese code conversion is used anywhere since
Japanese mail messages are written in JIS code but programs are easy
to use strings in EUC-JP.
@@ -26,7 +26,7 @@ for the language dependence handling in messages.
<sect1>
<title>
- Something::Language:: class
+ Something::Language:: Class
</title>
<para>