名称
forw − メッセージを転送する
形式
forw [+folder] [msgs] [−annotate] [−noannotate] [−draftfolder +folder] [−draftmessage msg] [−nodraftfolder] [−editor editor] [−noedit] [−filter filterfile] [−form formfile] [−format] [−noformat] [−inplace] [−noinplace] [−whatnowproc program] [−nowhatnowproc] [−cnv] [−nocnv] [−help]
forw [+folder] [msgs] [−digest list] [−issue number] [−volume number] [other switches for forw] [−help]
解説
forw は、他のメッセージを同封したメッセージを作成するのに、用いられます。 forw は、components ファイルまたは ‘−form formfile’ (comp を参照)と、 転送されるメッセージの本文から新しいメッセージを合成します。 comp と同様、エディタが起動され、編集作業が完了すると、 メッセージが転送される前にユーザに確認を捉します。
デフォルトのメッセージフォームには次の要素が含まれます。
ユーザの MH ディレクトリに “forwcomps” というファイルがあれば、 それが上記のフォームの代わりに用いられます。 ‘−form formfile’ が指定されているなら、そのファイルが用いられます。
ドラフトが既に存在する場合、forw はドラフトの処置を問い合わせます。 quit という応答で、forw はドラフトをそのままにして終了します。 replace という応答で既存のドラフトを空にし、 list という応答でドラフトを表示します。
forw は、‘−cnv’ が指定されると、引用の際には環境変数 ‘LANG’ で指定し た内部コードにメッセージを変換し、送信の際にはメッセージ中の 8bit コードを MAIL コードに変換します。 ‘−nocnv’ が指定されると変換しません。
‘−annotate’ スイッチが指定されている場合、 送られるメッセージは次の行で注釈付けされます。
Forwarded: date
Forwarded: addrs
それぞれのアドレスリストは、必要なだけの行数を持ちます。 この注釈付けは、メッセージが直接 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 と指定された フィルタファイルを使用して送られるメッセージをフォーマットします。
送られるメッセージはそれぞれ encapsulation デリミタで区切られ、 メッセージ中の行がダッシュ(-)で始まる場合、行頭に ‘− ’ が付加されます。 こうして、受信されたメッセージは burst(1) で分解できる形になります。
prompter(1) を利用する場合は、.mh_profile ファイル に prompter の ‘−prepend’ スイッチを指定することにより、 転送されるメッセージの前に任意のテキストを挿入することができます
(a major win!)。
スイッチ ‘−draftfolder +folder’ と ‘−draftmessage msg’ は、 MH のドラフトフォルダ機能を起動します。 この機能は高度な(そして有用な)ものです。 より詳しくは、MH マニュアル の Advanced Features 節を参照してください。
エディタから抜け出すと、forw は whatnow プログラムを起動します。 使用できるオプションについては、 whatnow(1) を参照してください。 スイッチ ‘−nowhatnowproc’ を用いることにより、 このプログラムの起動を抑制することができます (実際には、最初の編集を行なうのは whatnow プログラムです。 従って、‘−nowhatnowproc’ により全ての編集作業を抑制することができます)。
‘−digest list’、‘−issue number’ そして ‘−volume number’ スイッチ は MH のダイジェスト機能を起動します。 これらのスイッチを指定することで、次に示すエスケープを 有効にしたりオーバロードすることができます。
型エスケープリターン値解説
componentdigeststring‘−digest’ の引数
functioncurinteger‘−volume’ の引数
functionmsginteger‘−issue’ の引数
ダイジェストの作成に関する詳細については、 MH ユーザーズマニュアルの Advanced Features セクションを 参照してください。
関連ファイル
^/usr/new/lib/mh/forwcomps~^メッセージスケルトン
^または <mh−dir>/forwcomps~^標準のスケルトンの代わり
^/usr/new/lib/mh/digestcomps~^‘−digest’ が指定されている場合の
メッセージスケルトン。
^または <mh−dir>/digestcomps~^標準スケルトンの代わり
^/usr/new/lib/mh/mhl.forward~^メッセージフィルタ
^または <mh−dir>/mhl.forward~^標準のフィルタの代わり
^$HOME/.mh_profile~^ユーザのプロファイル
^<mh−dir>/draft~^ドラフトファイル
プロファイルコンポーネント
^Path:~^ユーザの MH ディレクトリ
^Current−Folder:~^デフォルトのカレントフォルダ
^Draft−Folder:~^デフォルトのドラフトフォルダ
^Editor:~^デフォルトより優先させるエディタ
^Msg−Protect:~^新しいメッセージ(ドラフト)を作成するときに
セットする保護モード
^fileproc:~^メッセージをリファイルするプログラム
^mhlproc:~^転送するメッセージをフィルタするプログラム
^whatnowproc:~^“What now?” と尋ねてくるプログラム
関連事項
Proposed Standard for Message Encapsulation (aka RFC−934),
comp(1), dist(1), repl(1), send(1), whatnow(1), mh−format(5), sendmail(8)
デフォルト値
^‘+folder’~^カレントフォルダ
^‘msgs’~^カレントメッセージ
^‘−noannotate’
^‘−nodraftfolder’
^‘−noformat’
^‘−noinplace’
^‘−cnv’
コンテクスト
フォルダが与えられた場合、そのフォルダがカレントフォルダとなります。 最初に送られたメッセージがカレントメッセージとなります。
バグ
whatnowproc が whatnow の場合、 forw は組み込まれた whatnow を用い、 whatnow プログラムを実際に起動するのではありません。 従って、独自の whatnowproc を定義するとき、 それに whatnow という名前を付けても forw はそれを起動しません。
forw は、送るメッセージを注釈付けするよう指示された場合、 ドラフトが正常に送出されるまで、注釈付けをしません。 whatnowproc から send の代わりに push を行なうと、 メッセージが正常に送出される前にファイルが整理 (例えば ‘folder −pack’ を使用することにより)されることにより、 forw が混乱する可能性があります。 dist や repl ではこの問題は生じません。
NEWS-OSRelease 4.1C