]> diplodocus.org Git - nmh/blobdiff - man/mhfixmsg.man
Removed a bunch of unreachable break statements found by
[nmh] / man / mhfixmsg.man
index 14d2bf172cf6e344532edd7d372544ce38857395..f45447b4d40a703087e451d8cdbb8160aa77bcbd 100644 (file)
@@ -1,4 +1,4 @@
-.TH MHFIXMSG %manext1% "March 17, 2013" "%nmhversion%"
+.TH MHFIXMSG %manext1% "October 27, 2013" "%nmhversion%"
 .\"
 .\" %nmhwarning%
 .\"
@@ -9,7 +9,10 @@ mhfixmsg \- rewrite MIME messages with various transformations
 .na
 .B mhfixmsg
 .RI [ +folder ]
-.RI [ msgs ]
+.RI [ msgs " | "
+.IR "absolute pathname" " | "
+.RB \-file
+.IR file ]
 .RB [ \-decodetext
 8bit/7bit |
 .BR \-nodecodetext ]
@@ -17,12 +20,14 @@ mhfixmsg \- rewrite MIME messages with various transformations
 .I codeset
 .RB "| " \-notextcodeset ]
 .RB [ \-reformat " | " \-noreformat ]
+.RB [ \-replacetextplain " | " \-noreplacetextplain ]
 .RB [ \-fixboundary " | " \-nofixboundary ]
 .RB [ \-fixcte " | " \-nofixcte ]
-.RB [ \-file
-.IR file ]
 .RB [ \-outfile
 .IR outfile ]
+.RB [ \-rmmproc
+.IR program ]
+.RB [ \-normmproc ]
 .RB [ \-verbose " | " \-noverbose ]
 .RB [ \-version ]
 .RB [ \-help ]
@@ -33,7 +38,7 @@ rewrites MIME messages, applying specific transformations such as
 decoding of MIME-encoded message parts and repairing invalid MIME
 headers.
 .PP
-MIME messages are specified in RFC\-2045 to RFC\-2049
+MIME messages are specified in RFC 2045 to RFC 2049
 (see
 .IR mhbuild (1)).
 The
@@ -49,8 +54,19 @@ The
 .B \-decodetext
 switch enables a transformation to decode each base64 and
 quoted-printable text message part to the selected 8bit or 7bit
-encoding.  If the decoded text would not fit the selected encoding as
-defined by RFC-2045, the part is not decoded.
+encoding.  If 7bit is selected for a base64 part but it will only fit
+8bit, as defined by RFC 2045, then it will be decoded to 8bit
+quoted-printable.  Otherwise, if the decoded text would not fit the
+selected encoding, the part is not decoded (and a message will be
+displayed if
+.B \-verbose
+is enabled).
+.PP
+When the
+.B \-decodetext
+switch is enabled, each carriage return character that precedes a
+linefeed character is removed from text parts encoded in ASCII,
+ISO-8859-x, UTF-8, or Windows-12xx.
 .PP
 The
 .B \-textcodeset
@@ -80,6 +96,16 @@ inserts that text/plain part at the beginning of the containing
 multipart/alternative part, if present.  If not, it creates a
 multipart/alternative part.
 .PP
+The
+.B \-replacetextplain
+switch broadens the applicability of
+.B \-reformat
+by always replacing a corresponding text/plain part, if one exists.
+If
+.B \-verbose
+if enabled, the replacement will be shown as two steps:  a removal of
+the text/plain part followed by the usual insertion of a new part.
+.PP
 .B \-reformat
 requires a profile entry for each text part subtype to be reformatted.
 The mhfixmsg-format-text/subtype profile entries are based on external
@@ -130,7 +156,12 @@ switch directs
 .B mhfixmsg
 to use the specified
 file as the source message, rather than a message from a folder.
-If this file is \*(lq-\*(rq, then
+Only one file argument may be provided.  The
+.B \-file
+switch is implied if
+.I file
+is an absolute pathname.
+If the file is \*(lq-\*(rq, then
 .B mhfixmsg
 accepts the source message on the standard input stream.  If
 the
@@ -203,6 +234,33 @@ That is, it uses the
 profile component, if present.  If not present,
 .B mhfixmsg
 moves the original message to a backup file.
+The
+.B \-rmmproc
+switch may be used to override this profile component.  The
+.B \-normmproc
+switch disables the use of any
+.I rmmproc
+profile component and negates all prior
+.B \-rmmproc
+switches.
+.PP
+.SS "Integration with inc"
+.B mhfixmsg
+can be used as an add-hook, as described in %docdir%/README-HOOKS.
+Note that add-hooks are called from all
+.B nmh
+programs that add a message to a folder, not just
+.BR inc .
+Alternatively, a simple shell alias or function can be used to
+call
+.B mhfixmsg
+immediately after a successful invocation of
+.BR inc .
+For example, with bash:
+.PP
+.RS 5
+alias inc='inc && mhfixmsg'
+.RE
 .PP
 .SS "Integration with procmail"
 By way of example, here is an excerpt from a procmailrc file
@@ -237,6 +295,15 @@ STORE = %libdir%/rcvstore
 .RE
 .PP
 .SH FILES
+.B mhfixmsg
+looks for mhn.defaults in multiple locations: absolute pathnames are
+accessed directly, tilde expansion is done on usernames, and files are
+searched for in the user's
+.I Mail
+directory as specified in their profile.  If not found there, the directory
+.RI \*(lq %etcdir% \*(rq
+is checked.
+.PP
 .fc ^ ~
 .nf
 .ta \w'%etcdir%/mhn.defaults  'u
@@ -253,6 +320,7 @@ STORE = %libdir%/rcvstore
 ^rmmproc:~^Program to delete original messages or files
 .fi
 .SH "SEE ALSO"
+.IR inc (1),
 .IR mh-profile (5),
 .IR mhbuild (1),
 .IR mhlist (1),
@@ -269,6 +337,7 @@ STORE = %libdir%/rcvstore
 .RB ` "\-decodetext 8bit"'
 .RB ` \-notextcodeset '
 .RB ` \-reformat '
+.RB ` \-noreplacetextplain '
 .RB ` \-fixboundary '
 .RB ` \-fixcte '
 .RB ` \-noverbose '
@@ -278,4 +347,5 @@ If a folder is given, it will become the current folder.  The last
 message selected from a folder will become the current message.  If
 the
 .B \-file
-switch is used, the context will not be modified.
+switch or an absolute pathname is used, the context will not be
+modified.