forw constructs a new message from a forms (components) file, with a body composed of the message(s) to
be forwarded. An editor is invoked and, after editing is complete, the user is prompted before the
message is sent.
The default message template will direct forw to construct the draft as follows:
From: {from switch} or <Local-Mailbox> or <username@hostname>
To: {to switch} or blank
Fcc: {fcc switch} or +outbox
Subject: {subject switch} or "{original subject} (fwd)"
--------
If a file named “forwcomps” exists in the user's nmh directory, it will be used instead of this default
form. You may also specify an alternate forms file with the switch -formformfile. Forms are processed
via the nmh template system; see mh-format(5) for details. Components from the first forwarded message
are available as standard component escapes in the forms file.
In addition to the standard mh-format escapes, the following component escapes are also supported:
EscapeReturnsDescription
fcc string Any folders specified with `-fcc folder'
nmh-from string Addresses specified with `-from address'
nmh-to string Addresses specified with `-to address'
nmh-cc string Addresses specified with `-cc address'
nmh-subject string Any text specified with `-subject text'
By default, the “To:” and “cc:” fields are empty. You may add addresses to these fields with the -toaddress and -ccaddress switches. You may give these switches multiple times to add multiple addresses.
By default, the “From:” field contains either the value of the Local-Mailbox profile entry, or a system
default email address. This default can be overridden by using the -fromaddress switch. The default
mailbox in the “Fcc:” field is +outbox. This can be overridden by the -fcc switch.
Any text given to the -subject switch will be placed in the “Subject:” field in the draft.
If the draft already exists, forw will ask you as to the disposition of the draft. A reply of quit will
abort forw, leaving the draft intact; replace will replace the existing draft with a blank skeleton; and
list will display the draft.
If the -annotate switch is given, each message being forwarded will be annotated with the lines:
Forwarded: date
Forwarded: addrs
where each address list contains as many lines as required. This annotation will be done only if the
message is sent directly from forw. If the message is not sent immediately from forw, “comp-use” may be
used to re-edit and send the constructed message, but the annotations won't take place. Normally,
annotations are done in place in order to preserve any links to the message. You may change this by
using the -noinplace switch.
See comp(1) for a description of the -editor and -noedit switches.
Although forw uses a forms (components) file to construct the initial draft, a message filter file is
used to format each forwarded message in the body of the draft. The filter file for forw should be a
standard form file for mhl(1), as forw will invoke mhl to filter (re-format) the forwarded messages prior
to being output to the body of the draft.
The switches -noformat, -format, and -filterfilterfile specify which message filter file to use. If
-noformat is specified (this is the default), then each forwarded message is output into the draft
exactly as it appears, with no mhl filtering. If -format is specified, then the following default
message filter file, “mhl.forward”, which should be adequate for most users, is used:
; mhl.forward
;
; default message filter for `forw' (forw -format)
;
width=80,overflowtext=,overflowoffset=10
leftadjust,compress,compwidth=9
Date:formatfield="%<(nodate{text})%{text}%|%(tws{text})%>"
From:
To:
cc:
Subject:
:
body:nocomponent,overflowoffset=0,noleftadjust,nocompress
If a file named “mhl.forward” exists in the user's nmh directory, it will be used instead. You may
specify an alternate message filter file with the switch -filterfilterfile.
Each forwarded message is separated with an encapsulation delimiter. By default, any dashes in the first
column of the forwarded messages will be prepended with `- ' so that when received, the message is
suitable for bursting by burst(1). This follows the guidelines in RFC 934. You may use the
-nodashstuffing switch to suppress this form of quoting.
Users of prompter(1) can, by specifying prompter's -prepend switch in the .mh_profile file, prepend any
commentary text before the forwarded messages.
To use the MIME rules for encapsulation, specify the -mime switch. This directs forw to generate an
mhbuild composition file. Note that nmh will not invoke mhbuild automatically; you must specifically
give the command
What now? mime
prior to sending the draft.
The -draftfolder+folder and -draftmessagemsg switches invoke the nmh draft folder facility. This is an
advanced (and highly useful) feature. Consult mh-draft(5) for more information.
The -editoreditor switch indicates the editor to use for the initial edit. Upon exiting from the
editor, comp will invoke the whatnow program. See whatnow(1) for a discussion of available options. The
invocation of this program can be inhibited by using the -nowhatnowproc switch. (In fact, it is the
whatnow program which starts the initial edit. Hence, -nowhatnowproc will prevent any edit from
occurring.)
The -build switch is intended to be used by the Emacs mh-e interface to nmh. It implies -nowhatnowproc.
It causes a file <mh-dir>/draft to be created, containing the draft message that would normally be
presented to the user for editing. No mail is actually sent.
The -filemsgfile switch specifies the message to be forwarded as an exact filename rather than as an nmh
folder and message number. This switch implies -noannotate. The forwarded message is simply copied
verbatim into the draft; the processing implied by the -filter, -mime, and -digest switches is bypassed,
and the usual leading and trailing 'Forwarded Message' delimiters are not added. The same caveats apply
to this option as to the -build switch.
The -digestlist, -issuenumber, and -volumenumber switches implement a digest facility for nmh.
Specifying these switches enables and/or overloads the following escapes:
TypeEscapeReturnsDescription
component digest string Argument to `-digest'
function cur integer Argument to `-volume'
function msg integer Argument to `-issue'