-.TH MHFIXMSG %manext1% "March 16, 2014" "%nmhversion%"
+.TH MHFIXMSG %manext1% "November 30, 2014" "%nmhversion%"
.\"
.\" %nmhwarning%
.\"
.RB [ \-rmmproc
.IR program ]
.RB [ \-normmproc ]
+.RB [ \-changecur " | " \-nochangecur ]
.RB [ \-verbose " | " \-noverbose ]
.RB [ \-version ]
.RB [ \-help ]
.B nmh
is installed, it searches for a conversion program for text/html
content, and if one is found, inserts a mhfixmsg-format-text/html
-entry in %etcdir%/mhn.defaults. An entry of the same name in the
+entry in %nmhetcdir%/mhn.defaults. An entry of the same name in the
user's profile takes precedence. The user can add entries for
other text subtypes to their profile.
.PP
.B nmh
programs that parse MIME messages.
.PP
+.B mhfixmsg
+applies one transformation unconditionally: it removes an extraneous
+trailing semicolon from the parameter lists of MIME header fields.
+.PP
The
.B \-verbose
switch directs
.B mhfixmsg
to output informational message for each transformation applied.
.PP
+The return status of
+.B mhfixmsg
+is 0 if all of the requested transformations are performed, or
+non-zero otherwise.
+.RB ( mhfixmsg
+will not decode to binary content, but a request to do so is
+not considered a failure, and is noted with
+.BR \-verbose .)
+If a problem is detected with any one of multiple messages such that
+the return status is non-zero, then none of the messages will be
+modified.
+.PP
The
.B \-file
.I file
.RS 5
mhfixmsg -outfile - | \\
.RS 0
-%libdir%/rcvstore +folder
+%nmhlibexecdir%/rcvstore +folder
.RE
.RE
.SS Summary of Applicability
.B mhfixmsg
immediately after a successful invocation of
.BR inc .
-For example, with bash:
+One approach could be based on:
.PP
.RS 5
-alias inc='inc && mhfixmsg'
+msgs=`inc -format '%(msg)'` && [ -n "$msgs" ] && scan $msgs && \
+mhfixmsg -nochangecur $msgs
.RE
.PP
+Another approach would rely on adding a sequence to Unseen-Sequence,
+which
+.B inc
+sets with the newly incorporated messages. Those could then be
+supplied to
+.BR mhfixmsg .
.SS "Integration with procmail"
By way of example, here is an excerpt from a procmailrc file
that filters messages through
folder. It also stores the incoming message in the
.I Backups
folder in a filename generated by
-.BR mktemp ,
+.BR mkstemp ,
which is a non-POSIX utility to generate a temporary file.
-If you do not have that utility, then the
-.BR mkstemp (3)
-function could form the basis for a substitute. Or,
+Alternatively,
.B mhfixmsg
could be called on the message after it is stored.
.PP
.ta \w'\-fixboundary 'u
PATH = %bindir%:$PATH
MAILDIR = `mhparam path`
-MKTEMP = 'mktemp Backups/mhfixmsg.XXXXXXXX'
+#### The Backups directory is relative to MAILDIR.
+MKSTEMP = 'mkstemp -directory Backups -prefix mhfixmsg'
MHFIXMSG = 'mhfixmsg -noverbose -file - -outfile -'
-STORE = %libdir%/rcvstore
+STORE = %nmhlibexecdir%/rcvstore
-:0 w: nmh-worker/procmail.$LOCKEXT
+:0 w: nmh-workers/procmail.$LOCKEXT
* ^TOnmh-workers@nongnu.org
-| tee `$MKTEMP` | $MHFIXMSG | $STORE +nmh-workers
+| tee `$MKSTEMP` | $MHFIXMSG | $STORE +nmh-workers
.fi
.RE
.PP
searched for in the user's
.I Mail
directory as specified in their profile. If not found there, the directory
-.RI \*(lq %etcdir% \*(rq
+.RI \*(lq %nmhetcdir% \*(rq
is checked.
.PP
.fc ^ ~
.nf
-.ta \w'%etcdir%/mhn.defaults 'u
+.ta \w'%nmhetcdir%/mhn.defaults 'u
^$HOME/\&.mh\(ruprofile~^The user profile
-^%etcdir%/mhn.defaults~^Default mhfixmsg conversion entries
+^%nmhetcdir%/mhn.defaults~^Default mhfixmsg conversion entries
.fi
.SH "PROFILE COMPONENTS"
.fc ^ ~
.IR mhlist (1),
.IR mhparam (1),
.IR mhshow (1),
-.IR mkstemp (3),
+.IR mh-mkstemp (1),
.IR procmail (1),
.IR procmailrc (5),
.IR rcvstore (1),
.RB ` \-noreplacetextplain '
.RB ` \-fixboundary '
.RB ` \-fixcte '
+.RB ` \-changecur '
.RB ` \-noverbose '
.fi
.SH CONTEXT
If a folder is given, it will become the current folder. The last
-message selected from a folder will become the current message. If
+message selected from a folder will become the current message, unless
the
+.B \-nochangecur
+switch is enabled. If the
.B \-file
switch or an absolute pathname is used, the context will not be
modified.