-.TH MH-FORMAT %manext5% "November 4, 2012" "%nmhversion%"
+.TH MH-FORMAT %manext5% "January 10, 2015" "%nmhversion%"
.\"
.\" %nmhwarning%
.\"
escape sequences which begin with `%'. When specifying a format
string, the usual C backslash characters are honored: `\\b', `\\f',
`\\n', `\\r', and `\\t'. Continuation lines in format files end with
-`\\' followed by the newline character.
+`\\' followed by the newline character. A literal `%' can be inserted into
+a format file by using the sequence `%%'.
.\" TALK ABOUT SYNTAX FIRST, THEN SEMANTICS
.SS SYNTAX
Format strings are built around
if the function return or component value is
a non-empty string, and false for an empty string.
.PP
-The `%?' control escape is optional, and may there may be more
+The `%?' control escape is optional, and there may be more
than one `%?' control escape in a conditional block.
The `%|' control escape
is also optional, but may be included at most once.
amatch literal boolean \fIstr\fR starts with \fIarg\fR
plus literal integer \fIarg\fR plus \fInum\fR
minus literal integer \fIarg\fR minus \fInum\fR
+multiply literal integer \fInum\fR multiplied by \fIarg\fR
divide literal integer \fInum\fR divided by \fIarg\fR
modulo literal integer \fInum\fR modulo \fIarg\fR
num literal integer Set \fInum\fR to \fIarg\fR.
component
unquote expr string remove RFC 2822 quotes from \fIstr\fR
trim expr trim trailing whitespace from \fIstr\fR
+kilo expr string express in SI units: 15.9K, 2.3M, etc.
+ %(kilo) scales by factors of 1000,
+kibi expr string express in IEC units: 15.5Ki, 2.2Mi.
+ %(kibi) scales by factors of 1024.
putstr expr print \fIstr\fR
putstrf expr print \fIstr\fR in a fixed width
putnum expr print \fInum\fR
month date string month of the year (abbrev.)
lmonth date string month of the year
year date integer year (may be > 100)
-zone date integer timezone in hours
+zone date integer timezone in minutes
tzone date string timezone string
szone date integer timezone explicit?
(1=explicit,0=implicit,\-1=unknown)
pers addr string the personal name*
note addr string commentary text*
mbox addr string the local mailbox*
-mymbox addr integer List has the user's address? (0 or 1)
+mymbox addr integer list has the user's address? (0 or 1)
+getmymbox addr string the user's (first) address,
+ with personal name
+getmyaddr addr string the user's (first) address,
+ without personal name
host addr string the host domain*
nohost addr integer no host was present (0 or 1)*
type addr integer host type* (0=local,1=network,
sequences.
.PP
There are a limited number of function escapes to output terminal escape
-sequences. These sequences are retrieved from the
+sequences. These sequences are retrieved from the
.IR terminfo (5)
database according to the current terminal setting. The (\fIbold\fR\^),
(\fIunderline\fR\^), and (\fIstandout\fR\^) escapes set bold mode,
.RE
.PP
the month and date are printed in two digits (zero filled) separated by
-a slash. Next,
+a slash. Next,
.PP
.RS 5
.nf
.\" process 200 messages a day and still get some real work
.\" done." The authors apparently only planned to get
.\" real work done for about 50 days per folder.)
-Nontheless (as noted above)
+Nonetheless (as noted above)
the various scan format strings are inherited
from older MH versions, and are generally hard-coded to 4
digits of message number before formatting problems