FORW(1)

NAME
forw - メッセージを転送する

SYNOPSIS
forw [+folder] [msgs] [-annotate] [-noannotate] [-draftfolder +folder] [-draftmessage msg] [-nodraftfolder] [-editor editor] [-noedit] [-filter filterfile] [-form formfile] [-format] [-noformat] [-inplace] [-noinplace] [-mime] [-nomime] [-whatnowproc program] [-nowhatnowproc] [-help]
forw [+folder] [msgs] [-digest list] [-issue number] [-volume number] [other switches for forw] [-help]

DESCRIPTION
forw は、 他のメッセージを含んだメッセージを作るために使われます。 メッセージ・フォーム(comp 参照)から、 新しいメッセージを作り、 転送されるメッセージをボディ部分に含めます。 comp 同様にエディタが呼び出され、編集が終わると、メッセージが送られる 前にユーザーに質問をしてきます。 転送されるメッセージを含む場合の、 デフォルトのメッセージ・フォームは次の通りです。
もし、ユーザーの MH ディレクトリの中に “forwcomps” という名前の ファイルがある場合には、このフォームに代わって、それが使われます。 いずれの場合も、`-form formfile' が指定された場合はそのファイルが使われます。 もし、ドラフトが既に存在する場合、 forw はそのドラフトをどうするのかを聞いて来ます。 quit と答えると、ドラフトをそのまま残して、forw を終了し、 replace では存在するドラフトを空の雛型で置き換え、 list ではドラフトを表示します。 もし、`-annotate' オプションが指定されると、転送されるメッセージには 次に示すような注釈が付けられます。
     Forwarded: 日付
     Forwarded: アドレス アドレスリストは要求されるだけ多くの行になり得ます。 この注釈は メッセージが forw から直接送られた時にだけ付けられます。 もし、メッセージが forw からすぐには送られずに、 後に “comp -use” などで再編集してから送られた場合、 この注釈付けは行なわれません。 `-inplace' オプションが指定されると、 注釈が付けられるメッセージのハードリンクを保持するために、 移動・コピー等せずに、そのファイル自身に注釈付けが行なわれます。 `-editor' や `-noedit' オプションに関しては comp (1) を参照して下さい。 forw では、`-form formfile' オプションを、 ドラフトの最初の状態を作るために使いますが、 `-filter filterfile'、`-format'、そして `-noformat' オプションは、 ドラフトのボディ部分に含まれる 転送されるそれぞれのメッセージを整形する際に使います。 `-noformat' オプションが指定されると、 それぞれの転送されるメッセージはまさにそのままボディ部分に出力されます。 もし `-format' または `-filter filterfile' が指定されると、 転送されるそれぞれのメッセージは、ドラフトのボディへと出力される前に フィルタ(再整形)にかけられます。 forw は転送されるメッセージを整形する際に mhl を呼び出すので、 forw に対するフィルタ・ファイルは mhl の標準フォーマットで あるべきです。 デフォルトのメッセージ・フィルタ(`-format' 指定時)は次の通りです。
もし、ユーザーの MH ディレクトリに “mhl.forward” という名前のファイルが ある場合、このフォームに代わってそれが使われます。 いずれの場合も、`-filter filterfile' が指定された場合はそのファイルが 使われます。 まとめると次のようになります。 `-noformat' は転送されるそれぞれのメッセージをそのまま使い、 `-format' は mhl と デフォルトのフィルタ・ファイル、つまり “mhl.forward” を使い、 `-filter filterfile' は転送されるそれぞれのメッセージ を mhl で整形する際に指定のフィルタ・ファイルを使います。 転送されるそれぞれのメッセージは、取り込み区切りで分割され、 転送されるメッセージの各行の最初の文字がダッシュ(`-')である場合、 その前に `- ' が付けられます。 これは受けとった際に、 メッセージを burst (1) で分割するのに適しています。 これは RFC-934 に従った方式です。 prompter (1) のユーザーは、 .mh_profile ファイル内で prompter に `-prepend' オプションを指定すると、 任意の注釈テキストを転送されるメッセージの前に挿入出来ます。 メッセージの包含に MIME ルールを使う場合には、 `-mime' オプションを使います。 これにより forw は mhn 処理を行なうためのファイルを作ります。 このファイルは送り出す前に mhn で処理する必要があります。 .mh_profile に以下の行を追加しない限り、 MH は、自動的には mhn は呼び出さない事に注意して下さい。

automhnproc: mhn

これをしない時は、 ドラフトを送る前に明示的に以下のコマンドを使わなければなりません。

What now? edit mhn

この幾つかの作業を自動で行なわせるためには、 prompter に対する rapid という名前のリンクを作り、 以下の行を .mh_profile に追加します。

forw: -editor rapid -mime
rapid: -rapid
rapid-next: mhn

この時、単に以下のように出来ます。

forw msgs
To: mailbox
cc:
Subject: whatever
--------Enter initial text
blah, blah, blah.
<CTRL-D>
--------
What now? edit
What now? send

edit コマンドは自動的に mhn を呼び出します。 `-draftfolder +folder' と `-draftmessage msg' オプションは MH のドラフト・フォルダ機能を呼び出します。 これは進んだ(そして極めて有用な)仕様です。 詳しくは mh-profile (5) の Draft-Folder 部分などを参照して下さい。 エディタを終了する際、forw は whatnow プログラムを呼び出します。 使えるオプションに関しては whatnow (1) を見て下さい。 このプログラムを呼び出す事は `-nowhatnowproc' オプションで抑制出来ます (本当のことを言うと、 最初の編集を開始するプログラムが whatnow です。 従って、`-nowhatnowproc' は全ての編集を抑制します)。 `-digest list'、`-issue number'、そして `-volume number' オプションは、 MH のダイジェスト機能のために設計されています。これにより、 メーリングリスト `list' のダイジェスト(まとめ送り)を作成する事が出来ます。 `-issue number' や `-volume number' オプションが指定されない場合に 関しては mh-profile (5) も参照して下さい。 これらのオプションを指定すると、以下のエスケープが可能になります。

タイプ	エスケープ	戻り値	説明
コンポーネント	digest	string	`-digest' への引数
関数	cur	integer	`-volume' への引数
関数	msg	integer	`-issue' への引数
forw は `-digest list' が指定された時は、 デフォルトのメッセージ・フォームは “forwcomps” に代わって “digestcomps” が、 デフォルトのフォーマット・ファイルは “mhl.forward” に代わって “mhl.digest” が使われます。 ダイジェスト形式に関しては burst (1) も参照して下さい。 ^/usr/pkg/libexec/mh/forwcomps~^メッセージの雛型 ^あるいは <mh-dir>/forwcomps~^が標準の雛型に代わる ^/usr/pkg/libexec/mh/digestcomps~^`-digest' が指定された時のメッセージの雛型 ^あるいは <mh-dir>/digestcomps~^が標準の雛型に代わる ^/usr/pkg/libexec/mh/mhl.forward~^メッセージのフィルタ ^あるいは <mh-dir>/mhl.forward~^が標準のフィルタに代わる ^$HOME/.mh_profile~^ユーザーのプロファイル ^<mh-dir>/draft~^デフォルトのドラフト・ファイル ^Path:~^ユーザーの MH ディレクトリを決める ^Current-Folder:~^デフォルトのカレント・フォルダを示す ^Draft-Folder:~^デフォルトのドラフト・フォルダを示す ^Editor:~^デフォルトのエディタを置き換える ^Msg-Protect:~^新しいメッセージ(ドラフト)を作る際に
^~^セットされるモード ^fileproc:~^メッセージを refile するプログラム ^mhlproc:~^転送されるメッセージにフィルターをかけるプログラム ^whatnowproc:~^“What now?” と聞いてくるプログラム Proposed Standard for Message Encapsulation (RFC-934),
comp(1), dist(1), repl(1), send(1), whatnow(1), mh-format(5)
`+folder'    デフォルトはカレント・フォルダ
`msgs'    デフォルトは cur
`-noannotate' `-nodraftfolder' `-noformat' `-noinplace' `-nomime' もしフォルダが指定されれば、それがカレント・フォルダになります。 転送された最初のメッセージがカレント・メッセージになります。 もし whatnowproc が whatnow の場合、 forw は whatnow プログラムを実際に走らせずに、 内蔵の whatnow ルーチンを使います。 従って、もし自分で独自の whatnowproc を設定する場合に、 それに whatnow という名前をつけてはなりません。 forw はそれを起動しないからです。 forw は、メッセージが転送されたと注釈付けをするよう指示された時に、 そのドラフトが配送に成功するまでは、実際に注釈付けを行ないません。 もし、whatnowproc から、 send ではなく push された場合、 forw はそのメッセージが配送に成功する前に ファイルの順序が変わったりする(例えば、`folder -pack' する)と、 混乱する可能性があります。 dist や repl にはこの問題はありません。 転送されるメッセージの行頭のダッシュ(`- ')をつけるのを避けたい場合には、 `-nodashmunging' オプションがあります。 詳しくは MH Administrator's Guide の “Hidden Features” の 章を参照して下さい。