Provided by: nmh_1.3-1build1_i386
show - show (display) messages
show [+folder] [msgs] [-draft] [-showproc program] [-showmimeproc
program] [-header | -noheader] [-checkmime | -nocheckmime]
[switches for showproc or showmimeproc] [-version] [-help]
Show lists each of the specified messages to the standard output
(typically, the terminal).
By default, text (non-MIME) messages are filtered and displayed by the
nmh command mhl. This command will display text messages in a nice,
uniform format. It also allows you to configure the format of the
displayed messages and which headers fields are shown. See the mhl(1)
manual page for the details about this command. This default can be
changed by defining the showproc profile component. Any switches not
recognized by show are passed along to that program. To override the
default and the showproc profile component, use the -showproc program
switch. For example, -showproc more will cause the more program to
list the messages with no reformatting. Normally, this program is
specified as the showproc in the user's .mh_profile, rather than using
a command line switch.
By default, non-text messages (MIME messages with multi-media contents)
are processed and displayed by the nmh command mhshow. See the
mhshow(1) manual page for details about this command. This default can
changed by defining the showmimeproc profile component. Any switches
not recognized by show are passed along to that program. To override
this default and the showmimeproc profile component, use the
-showmimeproc program switch.
Note that in some cases, show may invoke the showmimeproc even for
textual contents. This will happen for text messages that specify a
transfer encoding (such as MIME quoted-printable or base64) or specify
a character set that show doesn't believe can be displayed natively.
The environment variable $MM_CHARSET should be set to the terminal's
native character set to avoid gratuitous invocations of the
showmimeproc. See the mh-profile(5) man page for details about this
The option -checkmime (set by default) instructs show to test if any of
the messages to be displayed are non-text (MIME) messages. If any are
non-text, they are displayed by the program showmimeproc, else they are
displayed by the program showproc. The option -nocheckmime disables
this test and instructs show to use showproc, regardless of whether any
of the messages are non-text (MIME) messages.
The -noshowproc switch will disable any formatting or paging of
messages. It is equivalent to -nocheckmime -showproc cat. It is still
accepted, but should be considered (somewhat) obsolete.
If the environment variable $NOMHNPROC is set, the test for non-text
(MIME) messages will be disabled. This method is obsolete. Use the
-nocheckmime switch instead.
The -header switch tells show to display a one-line description of the
message being shown. This description includes the folder and the
If no `msgs' are specified, the current message is used. Although it
depends on the specific showproc or showmimeproc, in the default setup
when more than one message is specified, you will be prompted for a
<RETURN> prior to listing each message. Each message will be listed a
page at a time, and when the end of page is reached, the program will
wait for a <SPACE> or <RETURN>. If a <RETURN> is entered, it will
print the next line, whereas <SPACE> will print the next screenful.
If the standard output is not a terminal, no queries are made, and each
file is listed with a one-line header and two lines of separation.
"show -draft" will list the file <mh-dir>/draft if it exists.
If the profile entry "Unseen-Sequence" is present and non-empty, then
show will remove each of the messages shown from each sequence named by
the profile entry.
$HOME/.mh_profile The user profile
Path: To determine the user's nmh directory
Current-Folder: To find the default current folder
Unseen-Sequence: To name sequences denoting unseen messages
showproc: Program to show text (non-MIME) messages
showmimeproc: Program to show non-text (MIME) messages
mhl(1), mhshow(1), more(1), next(1), prev(1), scan(1)
`+folder' defaults to the current folder
`msgs' defaults to cur
If a folder is given, it will become the current folder. The last
message shown will become the current message.
The -header switch doesn't work when `msgs' expands to more than one
message. If the showproc is mhl, then this problem can be circumvented
by referencing the "messagename" field in the mhl format file.
Show updates the user's context before showing the message. Hence show
will mark messages as seen prior to the user actually seeing them.
This is generally not a problem, unless the user relies on the "unseen"
messages mechanism, and interrupts show while it is showing "unseen"
If your showproc is mhl (the default), then show uses a built-in mhl:
it does not actually run the mhl program. Hence, if you define your
own showproc , don't call it mhl since show won't run it.
If your showproc is the pager more, then avoid running show in the
background with only its standard output piped to another process, as
show | imprint &
Due to a bug in more, show will go into a "tty input" state. To avoid
this problem, re-direct show's diagnostic output as well. For users of
show |& imprint &
For users of sh:
show 2>&1 | imprint &