	᡼(Ƥ줿) HTML Ѵ

------------------------------------------------------------
1	HTMLε
1.1	ưŪ ס html (ExpireϤʤ)
1.2	&SyncHtml($HTML_DIR, $ID, *Envelope);
1.3	HTMLñ ( or )
1.4	$HTML_INDEX_UNIT == "infinite"
1.5	thread.html; åɲ index 
1.6	Variables to Customize HTML File 
1.7	HTML 4.0
1.8	HTMLեExpire
1.9	BASE64 Decoding
1.10	$HTML_OUTPUT_FILTER
1.11	$HTML_TITLE_HOOK
1.12	ɤˤHTMLμưʬ ʺμOK̤ǧ
1.13	&TalkWithHttpServer
1.14	URLȤ֤
1.15	HRefؿˤURLǡΰȤ
1.16	NOTE: Special Character (libsynchtml.pl)
------------------------------------------------------------


1	HTMLε

[֥ȥ饯]
̤ͣˤʤ뵭HTML""ޤĤޤMLΥۡˤ
spoolǥ쥯ȥβ̤εhtdocsβHTML줿פ
ޤåɤindexޤWWWФˤȤäƤñ˥ե
ɤʤΤôڤǤǤCGIǤϤʤΤǹ٤ʤȤǤ
ꤷޤ

(֤2.1UPGRADEοͤؤ): 
HTML ǤǥեȤǤ var/htdocs -> htdocs/ Ѥ
Ƥޤvar  nobody permission ФƤʤǤ

Υ롼 htdocs/ β˵HTMLեȤŬ 
index.html  thread.html ƤޤΤ᱿ѥݥꥷȤ
WWWФCGIʤɤȤʤ(Ȥʤ)ˤϤޤ
󡣰̤CGIͳ٤Ϲ⤤Ǥ礦WWWԤϥƥ
ŪˤΤϻȤ碌ʤĵɤिӤץ
ȽŤȤȤ⤢ޤfmlϤ˺
ޤ󤬡Τ˻ʧͤФʤʤȥ졼ɥդޤ

1.1	ưŪ ס html (ExpireϤʤ)
See also: utility_programs 6.20 

$AUTO_HTML_GEN = 1; 򥻥åȤȡưŪHTML줿ޤ
 $DIR β $HTML_DIR (ǥեȤ htdocs) Ȥ
λ̤PLAINTEXTΥס($SPOOL_DIRί)Ʊ˺äƤ
ޤ

HTMLμΤ HOOK ǸƤӽФޤfml.pl 椫鳰 
SyncHTMLfiles.pl ƤǤ餻ΤʤΤ;-)HOOK Ǥ
褦˽ľޤ
: libsynchtml.pl ˤ SyncHtml.pl  obsolete ˤʤޤ

 htdocs/ β˳ع¤ꤽβ˺ޤع¤
ֹ100̤Ȥʤɤñ̤ˤƤޤñ̤ $HTML_INDEX_UNIT Ƿ
ޤ

Example:

	htdocs/
	htdocs/19980120/
	htdocs/19980120/1.html
	htdocs/19980120/2.html
	.....

1.2	&SyncHtml($HTML_DIR, $ID, *Envelope);

SYNOPSIS:

	&SyncHtml($HTML_DIR, $ID, *Envelope);

	$HTML_DIR 	줿HTML֤
	$ID		ֹ &Distribute; 
			Хѿ $ID ϥåȤ롣
	*Envelope	%Envelope

Example: 

	$FML_EXIT_HOOK .= q#;
		&use('synchtml');
		$HTML_DIR = 'htdocs';
		&SyncHtml($HTML_DIR, $ID, *Envelope);
	#;

&SyncHtml 餻

	htdocs/index.html 
	htdocs/ID.html 

ޤindex.html Ȥ LIST ¤Ƥޤ

	<UL>
	<LI>
	<A HREF=1310.html>
	96/09/16 18:12:33 Subject
	</A>

	<UL>
	
	<LI> <A HREF=ֹ.html> Summary եɤ </A>
	

$HTML_INDEX_REVERSE_ORDER åȤƤȵ <LI> ȥ
ޤĤޤ꿷ǽ櫓Ǥ

λ directory  .indexcache ˥å夵Ƥǡ
Ƥޤե .indexcache  $HTML_DATA_CACHE ѹǤޤ

ޤåɤ뤿ΥåΥե̾ $HTML_DATA_THREAD 
Ǥ

Ʊ饤֥ƤƱȤ򤹤륳ޥɥ饤󤫤ΤΥ󥿡
ե spool2html.pl ȤΤ⤢ޤ
See also: utility_programs 6.20 
See also: utility_programs 6.20 

1.3	HTMLñ ( or )

	$HTML_INDEX_UNIT (default is 'day')

	Ǥ:

		"day"
		"week"
		"month"
		"infinite"
		number (e.g. 100, 1000, ...)

ߤɸΥǥեȤ $HTML_INDEX_UNIT = 'day'; Ǥ

⤷expireʤĤ htdocs/ ˿Υե뤬Ǥ뤳Ȥˤʤ
ͤޤ󡣤ϥե100Ĥȡ⤷Ȥdirectory
ȤƤʤɤ䤹Ǥ礦

Example: Creation of HTML articles on 1996/09/16

	htdocs/19960916/index.html
	htdocs/19960916/100.html
	htdocs/19960916/101.html
	...

Τ褦 1996/09/16 MLε htdocs/19960916/ ʲHTML
ޤ

ޤ $HTML_INDEX_UNIT = ; (e.g. 100)Ȥϵ100ĤȤ
directoryޤ

Example:

	htdocs/100/
	htdocs/100/101.html
	htdocs/100/102.html
	...
	htdocs/200/
	htdocs/200/201.html
	htdocs/200/202.html
	...

1.4	$HTML_INDEX_UNIT == "infinite"

ʤɤǤ櫓˰Ĥ directory ˺롣$HTML_DIR ľ롣
ȥեå¿Ĥεǥ쥯ȥľˤǤƤޤȤ
褦ʥǤ󸽼ŪʤΤǻȤ٤Ǥʤ(
λ֤ϼˤʤʤ)

1.5	thread.html; åɲ index 

åɲ HTML (libsynchtml.pl)

	$HTML_THREAD = 1; 

ˤȥåɲǥåեȤ thread.html 
ξΤǹʳؤ򸫤ФǤ礦åɤˤ 
In-Reply-To:  References: ΰ¸طȤäƤޤΤ
ʤ MUA ȤäƤͤΥ᡼Ϥޤưޤ

	thread.html
	index.html
		SUB-DIRECTORY/thread.html
		SUB-DIRECTORY/index.html
	...

Τ褦ξΥե뤬̤γؤΤǡͤˤϤɤ
򤿤ɤäƤߤƤ館ɤǤ礦

$HTML_INDENT_STYLE (default "UL")ϥåɤݤ˻ȤHTMLΥ
?Ǥߤ륹ϡʸˡ<UL>ʤ򤺤餹Ѥ뤫
ݤǤ

$HTML_THREAD_REF_TYPE ϰ¸طκΥפǤǥեȤǤ
References: In-Reply-To: Τ٤ƤΥե󥹤إ󥯤Ϥޤ
Ȥ thread.html ǽʣƤƤǤ󥯤ϰĤӤ
ʤ

	$HTML_THREAD_REF_TYPE = "prefer-in-reply-to"; (3.0 default)

ꤹȡ
	1.	In-Reply-To: 
	2.	In-Reply-To: ʤ References: ˸ǸID
εȤߤʤ褦ˤޤ

1.6	Variables to Customize HTML File 

           $HTML_FORMAT_PREAMBLE

		(default) Ƭ <HEAD> ޤ
		<TITLE>

           $HTML_DOCUMENT_SEPARATOR
		(default) </HEAD><BODY>

		

           $HTML_FORMAT_TRAILER

		</BODY></HTML> (default) 

index.html Ѥˤ

	$INDEX_HTML_DOCUMENT_SEPARATOR
	$INDEX_HTML_FORMAT_PREAMBLE
	$INDEX_HTML_FORMAT_TRAILER

ȤѿѰդƤޤ

᡼󥰥ꥹȤεΤɤΥإåɽ뤫 @HtmlHdrFieldsOrder 
Ƿޤޤ $HTML_HEADER_TEMPLATE ȤѿȤ 
@HtmlHdrFieldsOrder ̵뤵졢$HTML_HEADER_TEMPLATE 񤭹ޤ
ޤ

1.7	HTML 4.0

HTML 4.0 ˤĤƤ

	From: TAMURA Kent <kent@hauN.org>
	fml-support: 04153

ΥѥåۤȤɤΤޤ޻ȤäƤޤ ꤬Ȥ _o_

$HTML_STYLESHEET_BASENAME ϥ륷ȤΥեǤsub
directory β html ե뤬뤳ȤθꤷƲ
:

	$HTML_STYLESHEET_BASENAME = "../fml.css";

A style sheet example is automatically installed under automatic html
generation.

1.8	HTMLեExpire

	$HTML_EXPIRE_LIMIT	(default 0)

expire Ρɿ⤷ʲʤ餪ʤʤ줬ꤵƤʤ
Ȥ index.html :-)
: $HTML_EXPIRE Ϥ狼ˤΤ $HTML_EXPIRE_LIMIT ̾Ѥ
      ʤǤϼưѴƤΤǤɤäǤư

ʤΥ르ꥺϰʲΤ褦ʤΤǤhtdocs β

	thread.html
	index.html
		SUB-DIRECTORY/thread.html
		SUB-DIRECTORY/index.html
		SUB-DIRECTORY/100.html
		

Τ褦ʳؤƤޤϥեñ̤ǤϤʤ sub-directory 
Ȥ expire 뤫ݤꤷƤޤ
ʤȾü˵ȤȾü˥ե뤬ʤʤ
֤ thread ʤФʤʤΤǡΤʣʽ
ɬפˤʤ뤫Ǥ

directory  expire 뺬directory ˴ޤޤƤΥե뤬 
expire Ƚꤵ줿Ǥäơ directory ΰΥե
뤬 expire դ᤮ƤƤ⤽ƤΥե뤬 expire 
ޤǻĤ³뤳ȤդƲʤ directory Ⱦäˤ
־ index.html thread.html Ϻƹޤ

ޤ expire  overhead ʤ꤫ޤޤ directory ñ̤ʤ
 expire ٤Ƚ򤷤Ƥ⤷礦ޤ󡣥ǥե
ȤƿФ $HTML_EXPIRE_LIMIT * 5 ˰ expire code 
ޤͤ $HTML_EXPIRE_SCAN_UNIT ѹǤޤ

1.9	BASE64 Decoding

base64  encode 줿Τä$BASE64_DECODE Ȥѿ
줿 base64 decoder ȤäŸη̤HTMLߤޤ
ʤŸ̤FMLˤĤ̾ǥեޤ
桼Ϳ̾ security Ȥޤ

Example:
	$BASE64_DECODE = "/usr/local/bin/mewdecode";

Ū $BASE64_DECODE 줿ʤ bin/base64decode.pl 
Ȥޤ(2.2A#11ʹ)
See also: utility_programs 6.3 
See also: utility_programs 6.3 

1.10	$HTML_OUTPUT_FILTER

index.html  $HTML_OUTPUT_FILTER Ȥץ̤Ƥ
롣Ūˤ ܸѴMIME,BASE64 decoder 

1.11	$HTML_TITLE_HOOK

HTMLѴ줿ե¸ľ˼¹Ԥեå

:

	q#$HtmlTitle = sprintf("%s %s", $Now, $HtmlTitle);#;

ǡȥΥ󥿥åդդäѤ롣

1.12	ɤˤHTMLμưʬ ʺμOK̤ǧ

إå Keyword: ȥ꤬ޤǤ륭ɤ @HTML_FIELD Τɤ
˥ޥåˡ̤̤HTMLؤޤ

1.13	&TalkWithHttpServer

SYNOPSIS:
	&TalkWithHttpServer($host, $port, $request, $tp, *e); 

	$host		ۥ		(e.g. www.iij.ad.jp)
	$port		ݡֹ	(70, 80, 21, ...)
	$request	ꥯȤ
	$tp		TYPE OF PROTOCOL (http, gopher, ftp, ...)
	*e		뤿stab

http:// ǻϤޤʤˤϡǥեȤʹˤФ

	$DEFAULT_HTTP_SERVER

ǡޤǥեȤ80Ѥ

	$DEFAULT_HTTP_PORT 

ѹǤޤƱͤ gopher ˤĤƤ

	$DEFAULT_GOPHER_SERVER
	$DEFAULT_GOPHER_PORT 

ȤѿѰդƤޤ

Example:

    if ($tp =~ /http/i) {
	$host = $host || $DEFAULT_HTTP_SERVER;
	$port = $port || $DEFAULT_HTTP_PORT || 80;

	# connect http server
	&Mesg(*e, ">>> HREF=$tp://$host$request\n");
	&TalkWithHttpServer($host, $port, $request, $tp, *e); 
	&Mesg(*e, ">>> ENDS HREF=$tp://$host$request\n");
    } 

1.14	URLȤ֤

ñʤ

$START_HOOK = q#
    require 'libhref.pl';
    &HRef($Envelope{'Body'}, *Envelope);
    $DO_NOTHING =1;
#;

Ǥȥ᡼ʸ򥳥ޥɥݡȤη֤ޤ

1.15	HRefؿˤURLǡΰȤ

SYNOPSIS:
    &HRef($request, *Envelope);

$request URLƤ$Envelope{'message'}֤
$request 

	http://
	gopher://
	ftp://

򤷤ޤftp ϥ or ftpmailؤΥ졼ؼưŪؤޤ
ޤ⤷Хʥǡξuuencode֤ޤ

1.16	NOTE: Special Character (libsynchtml.pl)

üʸ

ASCII(or ISO 8859)ɤ4ĤΥ饯 HTMLǤ̤ʰ̣Ĥᡢ
ΤޤޤǤϻѤǤʤ 4ĤΥ饯Ȥϡ<, >, &  " Ǥ롣

<  > ϥ򼨤˻Ѥ졢 & ϡʲΥ饯䤽¾Υ饯
Τ ץ󥹤ȤʤäƤ롣

    &lt;
      <

    &gt;
      > Υץ

    &amp;
      & Υץ

    &quot;
      " Υץ

ץ󥹤Ȥϡƥ饯ɽ뤿ɬפʸǤꡢ 
줾 ; ɬɬס

¾ˤ⡢8bit饯򥵥ݡȤ뤿˰ʲΤ褦 ץ
ѰդƤ롣

: ʸܸǽ񤫤Ƥ뤿ᡢʲǤɽʤǽ
롣

    &ouml;
      ʸ o ˥ȤΥץ

    &ntilde;
      ʸ n ˥Υץ

    &Egrave;
      ʸ E ˥졼֡ȤΥץ

Τ褦ʥץ󥹤˴ؤƤCERN ꥹȤ󶡤Ƥ
ΤǤ򻲾ȤƤ


		INDEX

$AUTO_HTML_GEN                             ...   1.1 
automatic generation of html articles      ...   1.1 
$BASE64_DECODE                             ...   1.9 
$DEFAULT_GOPHER_PORT                       ...   1.13 
$DEFAULT_GOPHER_SERVER                     ...   1.13 
$DEFAULT_HTTP_PORT                         ...   1.13 
$DEFAULT_HTTP_SERVER                       ...   1.13 
HRef                                       ...   1.15 
&HRef                                      ...   1.14 1.15 
$HTML_DATA_CACHE                           ...   1.2 
$HTML_DATA_THREAD                          ...   1.2 
$HTML_DIR                                  ...   1.1 
$HTML_DOCUMENT_SEPARATOR                   ...   1.6 
$HTML_EXPIRE                               ...   1.8 
$HTML_EXPIRE_LIMIT                         ...   1.8 
$HTML_EXPIRE_SCAN_UNIT                     ...   1.8 
@HTML_FIELD                                ...   1.12 
$HTML_FORMAT_PREAMBLE                      ...   1.6 
$HTML_FORMAT_TRAILER                       ...   1.6 
$HTML_INDEX_REVERSE_ORDER                  ...   1.2 
$HTML_INDEX_UNIT                           ...   1.3 
$HTML_INDEX_UNIT == "infinite"             ...   1.4 
$HTML_OUTPUT_FILTER                        ...   1.10 
$HTML_STYLESHEET_BASENAME                  ...   1.7 
$HTML_THREAD                               ...   1.5 
$HTML_THREAD_REF_TYPE                      ...   1.5 
$HTML_TITLE_HOOK                           ...   1.11 
@HtmlHdrFieldsOrder                        ...   1.6 
$INDEX_HTML_DOCUMENT_SEPARATOR             ...   1.6 
$INDEX_HTML_FORMAT_PREAMBLE                ...   1.6 
$INDEX_HTML_FORMAT_TRAILER                 ...   1.6 
Keyword:                                   ...   1.12 
libhref.pl                                 ...   1.14 
libsynchtml.pl                             ...   1.1 
mewdecode                                  ...   1.9 
&SyncHtml                                  ...   1.2 
&TalkWithHttpServer                        ...   1.13 
WWW                                        ...   1 
åɲHTMLؤ               ...   1.5 
ư html                                ...   1.1 
