MSHOW(1)

NAME
mshow - render messages and extract MIME parts

SYNOPSIS
mshow [-h headers] [-A mimetypes] [-nqrBFHLN] [msgs ...]
mshow -x msg parts ...
mshow -O msg parts ...
mshow -t msgs ...
mshow -R msg

DESCRIPTION
mshow renders the specified msgs to the standard output, by default. ( See mmsg(7) for the message argument syntax.) If used interactively and no msgs are specified, mshow displays the current message using colorization and a pager.

The options are as follows:

-h headers
    Display the headers in the colon-separated list headers, instead of the default headers ‘from:subject:to:cc:date:reply-to:’.

-A mimetypes
    Define ‘multipart/alternative’ preference. mimetypes is a colon-separated list of MIME types which will be preferred, in the order given, when rendering ‘multipart/alternative’ parts. If no MIME type matches, the last MIME part will be rendered.

    When mimetypes is ‘all’, mshow will render all parts of a ‘multipart/alternative’ part.

    Defaults to ‘text/plain:text/html’.

-n  Don't update the current message link.

-q  Don't render the body, stop after header output.

-r  Don't render the body, print raw body. This may be dangerous to use on a tty.

-B  Decode encoded-words also in MIME parameters in direct violation of RFC 2047. This is useful if the attachment names look like ‘=?UTF-8?Q?stuff?=’.

-F  Don't apply filters to MIME parts.

-H  Don't decode the headers, print all raw headers. This may be dangerous to use on a tty.

-L  Don't filter the headers, print all decoded headers.

-N  Don't show MIME structure markers.

-x msg
    Switch to extraction mode: extract parts from the message msg into files. parts can be specified by number, filename or fnmatch(3) pattern. If no parts are specified, extracts all attachments with a filename.

-O msg
    Like -x but write to standard output. This may be dangerous to use on a tty. When used together with -r, the whole part is raw, that is, un-decoded and including MIME part headers.

-t  Switch to list mode: list all MIME parts of each msg.

-R msg
    Render the text parts from msg, suitable for use in a reply.

FILTERS
mshow, by default, decodes all ‘text/*’, ‘message/rfc822’ and ‘multipart/*’ parts, and re-encodes them into UTF-8 if necessary.

Other filters can be specified in the file ${MBLAZE:-$HOME/.mblaze}/filter ( or via MAILFILTER), in the format:

    type/subtype: command
or
    type: command

mshow will then spawn a pipe to command, write the MIME part to standard input and display the output. The environment variable PIPE_CHARSET will be set to the charset declared in the MIME part, if known.

Filters can communicate with mshow using their exit status:
0   The output is printed as plain text.
62  The output is printed raw, without escaping.
63  Behave as if the filter never ran.
64  The output is an RFC 5322 message that should be rendered again.
65 to 80
    Render the n-64th part of this text/multipart part.
All other exit statuses are regarded as errors.

ENVIRONMENT

MAILFILTER
    Path to an alternative filter file.

MBLAZE_NOCOLOR
    If non-empty, mshow will not spawn a colorization filter.

MBLAZE_PAGER
    Any non-empty value of the environment variable MBLAZE_PAGER is used instead of the standard pagination program, specified in PAGER. When empty or set to ‘cat’, no pager is spawned.

EXIT STATUS

SEE ALSO
mmsg(7)

AUTHORS
Leah Neukirchen <leah@vuxu.org>

LICENSE
mshow is in the public domain.

To the extent possible under law, the creator of this work has waived all copyright and related or neighboring rights to this work.

http://creativecommons.org/publicdomain/zero/1.0/