Provided by: nmh_1.8-1build4_amd64 bug

NAME

       scan - produce a summary listing of nmh messages

SYNOPSIS


       scan [-help] [-version] [+folder] [msgs] [-clear | -noclear] [-form formatfile] [-format string] [-header
            | -noheader] [-width columns] [-reverse | -noreverse] [-file filename]

DESCRIPTION

       scan  produces  a  one-line-per-message  listing  of  the  specified  folder or messages.  Each scan 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+  10/05 crocker    nned  <<Last week I asked some of
            16-  10/05 crocker    message id format  <<I recommend
            18   10/06 brien      Re: Exit status from mkdir
            19   10/07*brien      “scan” listing format in nmh

       The `+' on message 15 indicates that it is the current message.

       The  `-'  on  message  16  indicates  that it has been replied to, as indicated by a “Replied:” component
       (produced by the -annotate switch to the repl command).

       The `*' on message 19 indicates that no “Date:” header was present.  The time of last modification of the
       message is given instead.

       If there is sufficient room left on the scan line after the subject, the line will be  filled  with  text
       from the body, preceded by “<<”, and terminated by “>>” if the body is sufficiently short.  scan 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.

       By default, scan will decode RFC 2047 (MIME) encoding in these scan  listings.   scan  will  only  decode
       these  fields  if  your terminal can natively display the character set used in the encoding.  You should
       set the appropriate locale(1) environment variables to your native character set, if it is not  US-ASCII.
       See locale(1) for more details on the appropriate environment variables.

       The switch -reverse, makes scan list the messages in reverse order.

       The -file filename switch allows the user to obtain a scan listing of a mail drop.  This listing includes
       every message in the mail drop (you can't scan individual messages).  The switch -reverse is ignored with
       this option.  If filename is a file, it can be in mbox or MMDF format, as produced by packf.  If filename
       is a directory, it is considered to be in Maildir format.

       The  switch  -width columns may be used to specify the width of the scan line.  The default is to use the
       width of the terminal.

       The -header switch produces a header line prior to the scan 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 scan's output is directed to a terminal, then scan will consult the
       environment variables $TERM and $TERMCAP 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 scan's output is not directed to a
       terminal (e.g., a pipe or a file), then scan 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 header and two blank lines.

       To  override  the  output  format used by scan, the -format string or -form 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 mh-format(5) for the details.

       In addition to the standard mh-format(5) escapes, scan also recognizes the following additional component
       escapes:

            Escape    Returns  Description
            body      string   the (compressed) first part of the body
            dtimenow  date     the current date
            folder    string   the name of the current folder

       {body}  returns  a  string  without MIME decoding, i.e. the MIME boundary separator may be the first text
       shown.

       If no date header is present in the message, the function escapes which operate  on  {date}  will  return
       values  for the date of last modification of the message file itself.  This feature is handy for scanning
       a draft folder, as message drafts usually aren't allowed to have dates in them.

       The /etc/nmh directory contains several format files as examples of customized scan output.

       scan will update the nmh context prior to starting the listing,  so  interrupting  a  long  scan  listing
       preserves the new context.  nmh purists hate this idea.

FILES

       $HOME/.mh_profile          The user profile

PROFILE COMPONENTS

       Path:                To determine the user's nmh directory
       Alternate-Mailboxes: To determine the user's mailboxes
       Current-Folder:      To find the default current folder

SEE ALSO

       pick(1), show(1), mh-format(5)

DEFAULTS

       `+folder' defaults to the current folder
       `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 was.  Format strings prevent this from happening.

BUGS

       The  value  of  each  component  escape  is  set by scan to the contents of the first message header scan
       encounters with the corresponding component name; any following headers with the same component name  are
       ignored.

nmh-1.8                                            2020-02-17                                          SCAN(1mh)