view doc/ja-scan.me @ 0:bce86c4163a3

Initial revision
author kono
date Mon, 18 Apr 2005 23:46:02 +0900
parents
children
line wrap: on
line source

.\"	This file is automatically generated.  Do not edit!
.\"		written by MH-plus project
.SC SCAN 1
.NA
scan \- 一メッセージ毎の一覧を生成
.SY
scan
\%[+folder] \%[msgs]
\%[\-clear] \%[\-noclear]
\%[\-form\ formatfile]
\%[\-format\ string]
\%[\-header] \%[\-noheader]
\%[\-width\ columns]
\%[\-reverse] \%[\-noreverse]
\%[\-file filename]
\%[\-help]
.DE
\fIscan\fR は、指定のメッセージに関して一メッセージ一行の一覧を作ります。
それぞれの行はメッセージ番号、日付、\*(lqFrom:\*(rq 行、\*(lqSubject\*(rq 行、
そして、余裕があればメッセージ・ボディの一部を含んでいます。
例えば、次の通りです。

.nf
.in +.5i
.ta \w'15+- 'u +\w'07/\|05x 'u +\w'Dcrocker  'u
15+	07/\|05	Dcrocker	nned\0\0\*(<<Last week I asked some of
16\0-	07/\|05	dcrocker	message id format\0\0\*(<<I recommend
18	07/\|06	Obrien	Re: Exit status from mkdir
19	07/\|07*	Obrien	\*(lqscan\*(rq listing format in MH
.re
.in -.5i
.fi

メッセージ 15 の `+' はこのメッセージがカレント・メッセージである事を
表わします。
メッセージ 16 の `\-' はこのメッセージに \*(lqReplied:\*(rq 行がある
(`\-annotate' オプションを付けた \fIrepl\fR コマンドで付けられます)、
つまり、このメッセージに返事を書いた事を表わします。
メッセージ 19 の `*' はこのメッセージに \*(lqDate:\*(rq 行がない事を表わします
(代わりにこのメッセージの最終更新日が表示されます)。

もし、一覧の各行に Subject 以降にも充分な余地がある場合、頭に << をつけて
メッセージ・ボディのテキストで埋められます。
また、ボディが充分に短い場合は >> を付けて
終わります。
\fIscan\fR は指定のメッセージのそれぞれを実際に読み、
希望の行を引き出すためにそれを解析します。
もし、メッセージの形式に間違いがあれば、
解析中に適切なエラー・メッセージが表示されます。

`\-header' オプションを付けると、一覧リストを表示する前に見出し行を表示します。
現在は、フォルダ名と現在日時が表示されます (さらなる情報は \fBHISTORY\fR 節を
見て下さい)。

もし、`\-clear' オプションが指定され、\fIscan\fR の出力先が端末の場合、
\fIscan\fR は終了の前に画面をクリアする方法を見つけるために、端末のタイプを
決めようと、環境変数 \fB$TERM\fR と \fB$TERMCAP\fR を参照します。
もし、`\-clear' オプションが指定され、\fIscan\fR の出力先が端末でない場合
(例えば、パイプやファイル)、\fIscan\fR は終了前に改ページ文字を送ります。

例えば、次のコマンドは

.ti +.5i
(scan \-clear \-header; show all \-show pr \-f) | lpr

カレント・フォルダのスキャンリストを作り、改ページに続いて、
フォルダ内の全てのメッセージを1ページずつ整形して出力します。
`\-show\ pr\ \-f' を省略すると、メッセージは繋がって、
一行の見出しと二行の空行で区切られます。

\fIscan\fR の使う出力形式を置き換えるには、
`\-format\ string' または `\-form\ file' オプションが使えます。
この方法で個々のヘッダー行を簡単に取り出す事が出来ます。
string はフォーマット文字列で、file はフォーマット・ファイルです。
詳細は \fImh\-format\fR\0(5) を参照して下さい。

標準の \fImh\-format\fR\0(5) エスケープに追加して、
\fIscan\fR は下記の付加的コンポーネント・エスケープも認識します。
.sp 1
.nf
.ta \w'エスケープ  'u +\w'戻り値  'u
\fIエスケープ\fR	\fI戻り値\fR	\fI説明\fR
body	string	ボディの(スペースを縮めた)最初の部分
dtimenow	date	現在時刻
folder	string	カレント・フォルダ名
.re
.fi

.\" そして、次の関数エスケープも使えます。
.\" .sp 1
.\" .nf
.\" .ta \w'Dcompflagxfolderx  'u +\w'戻り値  'u
.\" \fIエスケープ\fR	\fI戻り値\fR	\fI説明\fR
.\" compflag{folder}	integer	`\-header' の論理値
.\" .re
.\" .fi
.\" 
もしメッセージに Date: ヘッダー行がなかった場合、{\fIdate\fP\|} を扱う
ファンクション・エスケープはそのファイル自身の最終更新日を返します。
これは、特にドラフト・フォルダをスキャンするのに手頃です。ドラフトは
通常、Date: 行を持つ事を許されてないからです。

\fIscan\fR は表示を始める前に \fIMH\fR コンテクストを更新します。
従って、長い \fIscan\fR リストを途中で止めた場合も、既に新しいコンテクストが
保存されています。
\fIMH\fR 潔癖症の人はこの仕様を嫌っているでしょう。
.Fi
^$HOME/\&.mh\(ruprofile~^ユーザーのプロファイル
.Pr
^Path:~^ユーザーの MH ディレクトリを決める
.Ps
^Alternate\-Mailboxes:~^ユーザーのメールボックスを決める
.Ps
^Current\-Folder:~^デフォルトのカレント・フォルダを示す
.Sa
inc(1), pick(1), show(1), mh\-format(5)
.De
`+folder'	デフォルトはカレント・フォルダ
.Ds
`msgs'	デフォルトは all
.Ds
`\-format'	デフォルトは上述のような形式
.Ds
`\-noheader'
.Ds
`\-width'	デフォルトは端末の幅
.Co
もし、フォルダが指定されれば、それがカレント・フォルダになります。
.Hi
以前、フォーマット文字列方式を使用するようになる前は、
`\-header' で、それぞれの項が何を表わしているのかの見出しを表示していました。
フォーマット文字列方式を使用するようになってからは、これをやめました。
.Bu
`\-format' に対する引数は、\fIscan\fR を呼び出すシェルにとって
一語として解釈される形でなければなりません。
従って、
通常、このオプションに対する引数はダブル・クォートで囲まれなければなりません。
.br
それぞれのコンポーネント・エスケープには、対応するコンポーネント名を持った
最初に現れるメッセージ・ヘッダの内容が設定されます。
同じコンポーネント名を持ったそれ以降のヘッダーは無視されます。
.sp
`\-reverse' オプションをつけると、\fIscan\fR はメッセージを逆順に表示します。
これはバグと考えるべきでしょう。
.sp
`\-file filename' オプションは
\fIpackf\fP で作られたメールドロップ・ファイルの一覧表示を
させる事が出来ます。この一覧はそのファイル中にあるそれぞれのメッセージを
含みます。
そのファイルに対してさらに他の処理をさせたければ、\fImsh\fP を
使うべきでしょう。このオプションを付けると `\-reverse' は無視されます。
.En