.\" %nmhwarning%
.
.SH NAME
-mh-format \- format file for nmh message system
+mh-format \- formatting language for nmh message system
.SH DESCRIPTION
Several
.B nmh
.nf
.RI "%< " condition " " "format-text"
.RI "%? " condition " " "format-text"
- \&...
+ ...
.RI "%| " "format-text"
%>
.fi
.PP
(Extra white space is shown here only for clarity.)
These constructs, which may be nested without ambiguity, form a general
-.B if\-elseif\-else\-endif
+.B if-elseif-else-endif
block where only one of the format-texts is interpreted. In other
words, `%<' is like the "if", `%?' is like the "elseif", `%|' is like
"else", and `%>' is like "endif".
.RS 5
.nf
.ta \w'Fformataddr 'u +\w'Aboolean 'u +\w'Rboolean 'u
-.I "Function Argument Result Description"
+.I "Function Argument Return Description"
msg integer message number
cur integer message is current (0 or 1)
unseen integer message is unseen (0 or 1)
If you need to create an address list that includes previously-seen
addresses you may use the (\fIconcataddr\fR\^) function, which is identical
to (\fIformataddr\fR\^) in all other respects. Note that (\fIconcataddr\fR\^)
-does NOT add addresses to the duplicate-suppression cache.
+does
+.I not
+add addresses to the duplicate-suppression cache.
.SS Other Hints and Tips
Sometimes, the writer of a format function is confused because output is
duplicated. The general rule to remember is simple: If a function or
.fi
.RE
.PP
-Unfortunately, if the Reply-to: header is NOT present, the output line
+Unfortunately, if the Reply-to: header is
+.I not
+present, the output line
will be something like:
.PP
.RS 5
statement (so the rule about not starting with % applies). But the component
escape in our
.B else
-statement (everything after the `%|') is NOT an argument to anything;
+statement (everything after the `%|') is
+.I not
+an argument to anything;
it begins with a %, and thus the value of that component is output.
This also has the side effect of setting the
.I str
.PP
It should be noted here that the side effects of function and component
escapes are still in force and, as a result, each component test in the
-.B if\-elseif\-else\-endif
+.B if-elseif-else-endif
clause sets the
.I str
register.
.SH "SEE ALSO"
.IR scan (1),
.IR repl (1),
-.IR fmttest (1),
+.IR fmttest (1)
.SH CONTEXT
None