REPL (1)
reply to a message
SYNOPSIS
+.5i
repl
\%[+folder] \%[msg]
\%[-group] \%[-nogroup]
\%[-annotate] \%[-noannotate]
\%[-cc\ all/to/cc/me] \%[-nocc\ all/to/cc/me]
\%[-query] \%[-noquery]
\%[-form\ formfile]
\%[-format] \%[-noformat]
\%[-filter\ filterfile]
\%[-inplace] \%[-noinplace]
\%[-mime] \%[-nomime]
\%[-fcc\ +folder]
\%[-width\ columns]
\%[-draftfolder\ +folder] \%[-draftmessage\ msg]
\%[-nodraftfolder]
\%[-editor\ editor] \%[-noedit]
\%[-whatnowproc\ program] \%[-nowhatnowproc]
\%[-build]
\%[-file msgfile]
\%[-version]
\%[-help]
-.5i
DESCRIPTION
Repl may be used to produce a reply to an existing message.
In its simplest form (with no arguments), repl will set up a
message-form skeleton in reply to the current message in the current
folder, and invoke the whatnow shell.
In order to construct the message draft of the reply, repl uses
a reply template to guide its actions. A reply template is simply a
mhl format file (see mh-format\0(5) for details).
If the switch `-nogroup' is given (it is on by default), then repl
will use the standard forms file \*(lqreplcomps\*(rq. This will construct
a draft message that is intended to be sent only to the author of the
message to which you are replying. If a file named \*(lqreplcomps\*(rq
exists in the user's nmh directory, it will be used instead of this
default forms file.
The default reply template \*(lqreplcomps\*(rq will direct repl
to construct the reply message draft as follows:
1i
To: <Mail-Reply-To> or <Reply-To> or <From>
cc: <To> and <cc> and <personal address>
Subject: Re: <Subject>
In-Reply-To: Your message of <Date>.
<Message-Id>
.5i
where field names enclosed in angle brackets (<\ >) indicate the
contents of the named field from the message to which the reply is
being made.
By default, the \*(lqcc:\*(rq field is empty. You may selectively add
addresses to this default with the `-cc\ type' switch. This switch takes an
argument (all/to/cc/me) which specifies who gets added to the default
\*(lqcc:\*(rq list of the reply. You may give this switch multiple times (with
different arguments) if you wish to add multiple types of addresses.
If the switch `-group' is given, then repl will use the the
standard forms file \*(lqreplgroupcomps\*(rq. This will construct a
draft message that is intended as a group or followup reply. If a file
named \*(lqreplgroupcomps\*(rq exists in the user's nmh directory, it
will be used instead of this default forms file.
The default group reply template \*(lqreplgroupcomps\*(rq will direct
repl to construct the reply message draft as follows:
1i
To: <Mail-Followup-To>
Subject: Re: <Subject>
In-Reply-To: Message from <From> of <Date>.
<Message-Id>
.5i
or if the field <Mail-Followup-To> is not available:
1i
To: <Mail-Reply-To> or <Reply-To> or <From>
cc: <To> and <cc> and <personal address>
Subject: Re: <Subject>
In-Reply-To: Message from <From> of <Date>.
<Message-Id>
.5i
By default, the \*(lqcc:\*(rq contains all the addresses shown. You may
selectively remove addresses from this default with the `-nocc\ type' switch.
This switch takes an argument (all/to/cc/me) which specifies who gets removed
from the default \*(lqcc:\*(rq list of the reply. You may give this switch
multiple times (with different arguments) if you wish to remove multiple types
of addresses.
In any case, you may specify an alternate forms file with the switch
`-form\ formfile'.
The `-query' switch modifies the action of `-nocc\ type' switch by
interactively asking you if each address that normally would be placed in
the \*(lqTo:\*(rq and \*(lqcc:\*(rq list should actually be sent a copy.
This is useful for special-purpose replies. Note that the position of
the `-cc' and `-nocc' switches, like all other switches which take a
positive and negative form, is important.
Lines beginning with the fields \*(lqTo:\*(rq, \*(lqcc:\*(rq, and
\*(rqBcc:\*(rq will be standardized and have duplicate addresses removed.
In addition, the `-width\ columns' switch will guide repl's
formatting of these fields.
If the draft already exists, repl will ask you as to the disposition
of the draft. A reply of quit will abort repl, leaving the
draft intact; replace will replace the existing draft with a blank
skeleton; and list will display the draft.
See comp\0(1) for a description of the `-editor' and `-noedit'
switches. Note that while in the editor, the message being replied
to is available through a link named \*(lq@\*(rq (assuming the default
whatnowproc\0). In addition, the actual pathname of the message is
stored in the environment variable $editalt, and the pathname of
the folder containing the message is stored in the environment variable
$mhfolder.
Although repl uses a forms file to direct it how to construct
the beginning of the draft, it uses a message filter file to direct
it as to how the message to which you are replying should be filtered
(re-formatted) in the body of the draft. The filter file for repl
should be a standard form file for mhl, as repl will invoke
mhl to format the message to which you are replying.
The switches `-noformat', `-format', and `-filter\ filterfile' specify
which message filter file to use.
If the switch `-noformat' is given (it is the default), then the message
to which you are replying is not included in the body of the draft.
If the switch `-format' is given, then a default message filter file
is used. This default message filter should be adequate for most users.
This default filter \*(lqmhl.reply\*(rq is:
+.5i
10
/etc/nmh/mhl.reply
-.5i
which outputs each line of the body of the message prefaced with the
\*(lq>\*(rq character and a space.
If a file named \*(lqmhl.reply\*(rq exists in the user's nmh directory,
it will be used instead of this form. You may specify an alternate
message filter file with the switch `-filter\ filterfile'.
Other reply filters are commonly used, such as:
+.5i
:
body:nocomponent,compwidth=9,offset=9
-.5i
which says to output a blank line and then the body of the message
being replied-to, indented by one tab-stop. Another popular format
is:
+.5i
n \{
message-id:nocomponent,\|nonewline,\\
formatfield=\*(lqIn message %{text},\ \*(rq \}
message-id:nocomponent,\|nonewline,\|formatfield=\*(lqIn message %{text},\ \*(rq
from:nocomponent,\|formatfield=\*(lq%(friendly{text}) writes:\*(rq
body:component=\*(lq>\*(rq,\|overflowtext=\*(lq>\*(rq,\|overflowoffset=0
-.5i
This message filter file cites the Message-ID and author of the message
being replied-to, and then outputs each line of the body prefaced with
the \*(lq>\*(rq character.
To use the MIME rules for encapsulation, specify the `-mime' switch.
This directs reply to generate an mhbuild composition file.
Note that nmh will not invoke mhbuild automatically, unless you
add this line to your .mh\(ruprofile file:
+.5i
automimeproc: 1
-.5i
Otherwise, you must specifically give the command
+.5i
What now? mime
-.5i
prior to sending the draft.
If the `-annotate' switch is given, the message being replied-to will
be annotated with the lines
Replied:\ date
Replied:\ addrs
where the address list contains one line for each addressee.
The annotation will be done only if the message is sent directly from
repl. If the message is not sent immediately from repl,
\*(lqcomp\ -use\*(rq may be used to re-edit and send the constructed
message, but the annotations won't take place. Normally annotations are
done inplace in order to preserve any links to the message. You may use
the `-noinplace' switch to change this.
The `-fcc\ +folder' switch can be used to automatically specify a folder
to receive Fcc:s. More than one folder, each preceded by `-fcc' can
be named.
In addition to the standard mh-format\0(5) escapes, repl
also recognizes the following additional component escape:
\w'Escape 'u +\w'Returns 'u
Escape Returns Description
fcc string Any folders specified with `-fcc\ folder'
To avoid reiteration, repl strips any leading `Re: ' strings from
the subject component.
The `-draftfolder\ +folder' and `-draftmessage\ msg' switches invoke
the nmh draft folder facility. This is an advanced (and highly
useful) feature. Consult the mh-draft(5) man page for more
information.
Upon exiting from the editor, repl will invoke the whatnow
program. See whatnow\0(1) for a discussion of available
options. The invocation of this program can be inhibited by using the
`-nowhatnowproc' switch. (In truth of 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, and is only present if nmh was compiled with support
for mh-e. It implies `-nowhatnowproc'. It causes a file <mh-dir>/reply
to be created, containing the draft message that would normally be presented
to the user for editing.
No mail is actually sent. Note that this switch is not guaranteed to
be present or to have the same effects in future versions of nmh:
it is documented here only for completeness.
The `-file\ msgfile' switch specifies the message to be replied to as an
exact filename rather than as an nmh folder and message number. It is
intended to be used by the msh\0(1) interface to nmh.
The same caveats apply to this option as to the `-build' switch.
^/etc/nmh/replcomps~^The standard reply template
^or <mh-dir>/replcomps~^Rather than the standard template
^/etc/nmh/replgroupcomps~^The standard `reply -group' template
^or <mh-dir>/replgroupcomps~^Rather than the standard template
^/etc/nmh/mhl.reply~^The standard message filter
^or <mh-dir>/mhl.reply~^Rather than the standard filter
^$HOME/.mh\(ruprofile~^The user profile
^<mh-dir>/draft~^The draft file
^Path:~^To determine the user's nmh directory
^Alternate-Mailboxes:~^To determine the user's mailboxes
^Current-Folder:~^To find the default current folder
^Draft-Folder:~^To find the default draft-folder
^Editor:~^To override the default editor
^Msg-Protect:~^To set mode when creating a new message (draft)
^fileproc:~^Program to refile the message
^mhlproc:~^Program to filter message being replied-to
^whatnowproc:~^Program to ask the \*(lqWhat now?\*(rq questions
mhbuild(1), comp(1), forw(1), send(1), whatnow(1), mh-format(5)
`+folder' defaults to the current folder
`msg' defaults to cur
`-nogroup'
`-nocc\ all' with `-nogroup', `-cc\ all' with `-group'
`-noannotate'
`-nodraftfolder'
`-noformat'
`-inplace'
`-nomime'
`-noquery'
`-width\ 72'
If a folder is given, it will become the current folder. The message
replied-to will become the current message.
If any addresses occur in the reply template, addresses in the template
that do not contain hosts are defaulted incorrectly. Instead of using
the localhost for the default, repl uses the sender's host.
Moral of the story: if you're going to include addresses in a reply
template, include the host portion of the address.
The `-width columns' switch is only used to do address-folding; other
headers are not line-wrapped.
If whatnowproc is whatnow, then repl uses a built-in
whatnow, it does not actually run the whatnow program.
Hence, if you define your own whatnowproc, don't call it
whatnow since repl won't run it.
If your current working directory is not writable, the link named
\*(lq@\*(rq is not available.
|