-.TH FMTTEST %manext1% "August 31, 2014" "%nmhversion%"
-.\"
+.TH FMTTEST %manext1% 2014-08-31 "%nmhversion%"
+.
.\" %nmhwarning%
-.\"
-.SH FMTTEST
-fmttest \- test tool for the
-.IR mh-format (5)
-language
+.
+.SH NAME
+fmttest \- test tool for the nmh \fImh-format\fP\^(5) language
.SH SYNOPSIS
.HP 5
.na
.RI [ msgs " | " strings ]
.ad
.SH DESCRIPTION
-.B Fmttest
+.B fmttest
is used to test programs written for the
.B nmh
format language as specified by
and
.B fmtdump
programs.
-.PP
-.SS FORMAT PROGRAM SELECTION
+.SS Format Program Selection
The
.B \-format
.I string
and
.B \-form
.I formatfile
-switches may be used to specify a format string or a format file to read.
-If given a format string, it must be specified as a single argument to
-the
+specify a format string or file to read.
+A format string, if given, must be a single argument to the
.B \-format
-switch. If given a format file name with
+switch. If a format file name is passed to the
.BR \-form ,
-the file is searched for using the normal
+switch, the file is searched for using the normal
.B nmh
rules: absolute pathnames are accessed directly, tilde expansion is
done on usernames, and files are searched for in the user's
directory as specified in their profile. If not found there, the directory
.RI \*(lq %nmhetcdir% \*(rq
is checked.
-.SS MODE SELECTION AND COMPONENT SPECIFICATION
-.B Fmttest
-has four operating modes: address mode, raw mode, date mode, and message
-mode. These modes are selected by the
+.SS Mode Selection and Component Specification
+.B fmttest
+has four operating modes - address, raw, date, and message -
+which are selected by the
.BR \-address ,
.BR \-raw ,
.BR \-date ,
and
.B \-message
-switches respectively.
+switches, respectively.
.PP
-Address mode treats every argument as an email address and processes it
-with nmh's email parser. Each argument is processed with the specified
-format program with the parsed email address available as a special
+Address mode treats every argument as an email address to be processed
+by nmh's email parser using the specified format program.
+The parsed address is made available as a special
.RI %{ text }
component escape, and the output from the program is printed on standard output.
If there was an error parsing the email address the error message is
.fi
.RE
.PP
-In this mode
-.B fmttest
-is equivalent to
+Address mode is equivalent to
.IR ap (8).
.PP
In raw mode, no processing of the specified arguments is done. Each argument
In message mode the arguments to
.B fmttest
are interpreted as an optional folder and messages.
-.B Fmttest
+.B fmttest
will read each specified message and make all of the components in the
message available to the format program. Also, the appropriate information
for the
Regardless of the mode, other components can be provided to the format
program by the use of the
.B \-\|\-component
-switch. For example, the following program will test out the use of
-the
+switch. For example, the following program will test the use of the
.RB \*(lq encrypted \*(rq
component:
.PP
.fi
.RE
.PP
-In message mode components supplied on the command line will override
+In message mode, components supplied on the command line will override
components from messages.
-.SS ADDITIONAL SWITCHES
+.SS Additional Switches
The
.B \-dupaddrs
and
.B \-width
switch controls the column width which is used by the
.RI `%( width )'
-function escape. By default is set to the terminal width.
+function escape. It defaults to the terminal width.
.PP
The
.BR \-msgnum ,
.RI `%( size )',
and
.RI `%( unseen )'.
-If none are supplied these values are taken from the message in message mode;
-in all other modes the default values are 0.
-.SS COMPILING AND TRACING FORMAT PROGRAMS
+If none are supplied, these values are taken from the message in
+message mode; in all other modes the default values are 0.
+.SS Compiling and Tracing Format Programs
The
.B \-dump
switch outputs the complete set of format instructions for the specified
registers if they have changed from the previous instruction.
The output buffer is also printed if it has changed from the previous
instruction.
-.SS FORMAT INSTRUCTIONS
+.SS Format Instructions
It should be noted that there is not a one-to-one correspondence between
format escapes and format instructions; many instructions have side
effects. Instructions prefixed with
LV_DAT Load value from \fIdat\fR array into \fInum\fR register (see note)
LV_STRLEN Set \fInum\fR to the length of \fIstr\fR
LV_PLUS_L Add value to \fInum\fR register
-LV_MINUS_L Substract value from \fInum\fR register
+LV_MINUS_L Subtract value from \fInum\fR register
LV_DIVIDE_L Divide \fInum\fR register by value
LV_MODULO_L \fInum\fR modulo value
LV_CHAR_LEFT Store remaining number of printable chars in \fInum\fR
.IR repl (1),
.IR ap (8),
.IR dp (8),
+.IR fmtdump (8)
.SH DEFAULTS
.nf
.RB ` \-message '