X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/64e8827c5d5def0325ab7181fe939623c77e807c..55afa6a4e8886b665eb1c75d377b626314eb224e:/man/mhbuild.man diff --git a/man/mhbuild.man b/man/mhbuild.man index e4bd7933..dc47b63c 100644 --- a/man/mhbuild.man +++ b/man/mhbuild.man @@ -1,4 +1,4 @@ -.TH MHBUILD %manext1% "January 23, 2014" "%nmhversion%" +.TH MHBUILD %manext1% "March 13, 2014" "%nmhversion%" .\" .\" %nmhwarning% .\" @@ -17,10 +17,13 @@ mhbuild \- translate MIME composition draft .RB [ \-rfc934mode " | " \-norfc934mode ] .RB [ \-contentid " | " \-nocontentid ] .RB [ \-verbose " | " \-noverbose ] +.RB [ \-disposition " | " \-nodisposition ] .RB [ \-check " | " \-nocheck ] .RB [ \-headerencoding .IR encoding\-algorithm .RB " | " \-autoheaderencoding ] +.RB [ \-maxunencoded +.IR line\-length ] .RB [ \-dist ] .RB [ \-version ] .RB [ \-help ] @@ -34,7 +37,7 @@ a valid MIME message. .B mhbuild creates multi-media messages as specified in RFC 2045 to RFC 2049. This includes the encoding of message headers as specified -by RFC 2047. +by RFC 2047, and the encoding of MIME parameters as specified in RFC 2231. .PP If you specify the name of the composition file as \*(lq-\*(rq, then @@ -79,6 +82,11 @@ switch is present, then the listing will show any \*(lqextra\*(rq information that is present in the message, such as comments in the \*(lqContent-Type\*(rq header. +.PP +If the +.B \-disposition +switch is present, then the listing will show any relevant information from +the \*(lqContent-Disposition\*(rq header. .SS "Simplified Attachment Interface" For users who wish to simply attach files to text content, .B mhbuild @@ -94,6 +102,23 @@ content specified by directives (see below). See .IR send (1) for more details. +.PP +By default, the Content-Disposition will be \*(lqattachment\*(rq. +.B mhbuild +looks for user profile and mhn.defaults entries of the form +.PP +.RS 5 +mhbuild-disposition-/ +.RE +or +.RS 5 +mhbuild-disposition- +.RE +.PP +to supply the disposition value. The only supported values are +.I attachment +and +.IR inline. .SS "Translating the Composition File" .B mhbuild is essentially a filter to aid in the composition of MIME @@ -298,7 +323,7 @@ would be as follows: .fi .RE .PP -Any long URLs will be wrapped according to RFC 2017 rules. +Any long URLs will be wrapped according to RFC 2231 rules. .PP The \*(lqmessage\*(rq directive (#forw) is used to specify a message or group of messages to include. You may optionally specify the name of @@ -401,6 +426,18 @@ characters. The switch suppresses creation of all \*(lqContent-ID:\*(rq headers, even in the top level of the message. .PP +Normally +.B mhbuild +will choose an appropriate Content\-Transfer\-Encoding based on the content +and the MIME Content\-Type. However, you can override that in an +.B mhbuild +directive by specifying \*(lq*\*(rq and the encoding. Acceptable encoding +values are \*(lq8bit\*(rq, \*(lqqp\(*rq (for quoted\-printable), and +\*(lqb64\*(rq (for base64 encoding). It should be noted that undesired +results may occur if 8bit or quoted\-printable is selected for binary +content, due to the translation between Unix line endings and the line +endings use by the mail transport system. +.PP In addition to the various directives, plaintext can be present. Plaintext is gathered, until a directive is found or the draft is exhausted, and this is made to form a text content. If the plaintext @@ -473,6 +510,13 @@ If a text content contains only 7\-bit characters and the character set is not specified as above, then the character set will be labeled as \*(lqus-ascii\*(rq. .PP +By default text content with the high bit set is encoded with a 8bit +Content\-Transfer\-Encoding. If the text has lines longer than the value +of +.B \-maxunencoded +(which defaults to 78) then the text is encoded using the quoted\-printable +encoding. +.PP The .B \-headerencoding switch will indicate which algorithm to use when encoding any message headers @@ -617,15 +661,17 @@ definitions useful for that machine. .PP Finally, .B mhbuild -will attempt to consult a global -.B mhbuild -user profile, e.g., +will attempt to consult .PP .RS 5 %etcdir%/mhn.defaults .RE .PP if it exists. +.PP +See "Profile Lookup" in +.IR mh-profile (5) +for the profile search order, and for how duplicate entries are treated. .SS "Syntax of Composition Files" The following is the formal syntax of a .B mhbuild @@ -643,6 +689,7 @@ directive ::= "#" type "/" subtype [ "<" id ">" ] [ "[" description "]" ] [ "{" disposition "}" ] + [ "*8bit" | "*qp" | "*b64" ] [ filename ] EOL @@ -652,6 +699,7 @@ directive ::= "#" type "/" subtype [ "<" id ">" ] [ "[" description "]" ] [ "{" disposition "}" ] + [ "*8bit" | "*qp" | "*b64" ] external-parameters EOL @@ -683,6 +731,7 @@ plaintext ::= [ "Content-Description:" [ "(" comment ")" ] [ "[" description "]" ] [ "{" disposition "}" ] + [ "*8bit" | "*qp" | "*b64" ] EOL 1*line [ "#" EOL ] @@ -742,9 +791,13 @@ is checked. (RFC 2048), .PP .I "Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples" -(RFC 2049) +(RFC 2049), +.PP .I "Definition of the URL MIME External-Body Access-Type" -(RFC 2017) +(RFC 2017), +.PP +.I "MIME Parameter Value and Encoded Word Extensions: Character Sets, Languages, and Continuations" +(RFC 2231) .SH DEFAULTS .nf .RB ` \-headers ' @@ -753,5 +806,7 @@ is checked. .RB ` \-contentid ' .RB ` \-nocheck ' .RB ` \-noverbose ' +.RB ` \-nodisposition ' .RB ` \-autoheaderencoding ' +.RB ` "\-maxunencoded\ 78"' .fi