4.3BSD-UWisc/man/catl/scan.l
SCAN(1) UNIX Programmer's Manual SCAN(1)
NAME
scan - produce a one line per message scan listing
SYNOPSIS
scan [+folder] [msgs] [-clear] [-noclear] [-form formatfile]
[-format string] [-header] [-noheader] [-width columns]
[-help]
9 _S_c_a_n produces a one-line-per-message listing of the speci-
fied messages. Each _s_c_a_n line contains the message number
(name), the date, the "From:" field, the "Subject" field,
and, if room allows, some of the body of the message. For
example:
15+ 7/ 5 Dcrocker nned Last week I asked some of
16 - 7/ 5 dcrocker message id format I recommend
18 7/ 6 Obrien Re: Exit status from mkdir
19 7/ 7 Obrien "scan" listing format in MH
The `+' on message 15 indicates that it is the current mes-
sage. The `-' on message 16 indicates that it has been
replied to, as indicated by a "Replied:" component produced
by an `-annotate' switch to the _r_e_p_l command.
If there is sufficient room left on the _s_c_a_n line after the
subject, the line will be filled with text from the body,
preceded by <<, and terminated by >> if the body is suffi-
ciently short. _S_c_a_n actually reads each of the specified
messages and parses them to extract the desired fields.
During parsing, appropriate error messages will be produced
if there are format errors in any of the messages.
The `-header' switch produces a header line prior to the
_s_c_a_n listing. Currently, the name of the folder and the
current date and time are output (see the HISTORY section
for more information).
If the `-clear' switch is used and _s_c_a_n'_s output is directed
to a terminal, then _s_c_a_n will consult the $TERM and $TERMCAP
envariables to determine your terminal type in order to find
out how to clear the screen prior to exiting. If the
`-clear' switch is used and _s_c_a_n'_s output is not directed to
a terminal (e.g., a pipe or a file), then _s_c_a_n will send a
formfeed prior to exiting.
For example, the command:
(scan -clear -header; show all -show pr -f) | lpr
produces a scan listing of the current folder, followed by a
formfeed, followed by a formatted listing of all messages in
the folder, one per page. Omitting `-show pr -f' will cause
the messages to be concatenated, separated by a one-line
Printed 1/10/87 MH 1
9
SCAN(1) UNIX Programmer's Manual SCAN(1)
header and two blank lines.
If _s_c_a_n encounters a message without a "Date:" field, rather
than leaving that portion of the scan listing blank, the
date is filled-in with the last write date of the message,
and post-fixed with a `*'. This is particularly handy for
scanning a _d_r_a_f_t _f_o_l_d_e_r, as message drafts usually aren't
allowed to have dates in them.
To override the output format used by _s_c_a_n, the
`-format string' or `-format file' switches are used. This
permits individual fields of the scan listing to be
extracted with ease. The string is simply a format string
and the file is simply a format file. See _m_h-_f_o_r_m_a_t (5) for
the details.
In addition to the standard escapes, _s_c_a_n also recognizes
the following additional escape:
_e_s_c_a_p_e _s_u_b_s_t_i_t_u_t_i_o_n
body the (compressed) first part of the body
On hosts where _M_H was configured with the BERK option, _s_c_a_n
has two other switches: `-reverse', and `-noreverse'. These
make _s_c_a_n list the messages in reverse order. In addition,
_s_c_a_n will update the _M_H context prior to starting the list-
ing, so interrupting a long _s_c_a_n listing preserves the new
context. _M_H purists hate both of these ideas.
FILES
$HOME/.mh_profile The user profile
PROFILE COMPONENTS
Path: To determine the user's MH directory
Alternate-Mailboxes: To determine the user's mailboxes
Current-Folder: To find the default current folder
SEE ALSO
inc(1), pick(1), show(1), mh-format(5)
DEFAULTS
`+folder' defaults to the folder current
`msgs' defaults to all
`-format' defaulted as described above
`-noheader'
`-width' defaulted to the width of the terminal
CONTEXT
If a folder is given, it will become the current folder.
HISTORY
Prior to using the format string mechanism, `-header' used
to generate a heading saying what each column in the listing
Printed 1/10/87 MH 2
SCAN(1) UNIX Programmer's Manual SCAN(1)
was. Format strings prevent this from happening.
BUGS
The argument to the `-format' switch must be interpreted as
a single token by the shell that invokes _s_c_a_n. Therefore,
one must usually place the argument to this switch inside
double-quotes.
Printed 1/10/87 MH 3