General:. This page generally
describes new functionality in the 82 series of revisions and uploads. This is
Working Documentation that with maturity will be moved to the Master
Documentation.
num %* n: The
simplest numeric formatting. "n" is an integer specifying
the width of the formatted field. If the number is a float, it is coerced to
integer before formatting. No report is made of field overflow ... truncation
is on the left. Negative numbers cause left justification. A left take on the
formatting vector is used for length alignment. The left argument dictates the
number of elements.
num %* n.d:
Decimal formating is called for by a float right argument. The fractional part
(tenths) determines the decimal precision (half rounded). The whole part
determines the total width. Negative numbers cause left justification. Integers
in the format are made floating. Therefore, a decimal is always present.
num %* 0.d:
With only a fractional part, variable width formatting results. The fractional
part sets the number of decimal places. The width is that needed to accomodate
the data as represented with a one space separator. A negative in a format is
ignored. A trailing blank always results.
string %* n:
For strings n is taken as an integer. If positive, a left take is done.
If negative, a right take is done.
sequence %*
numfmt: There is still much work to do in filling out the
behavior for formatting the elements of a sequence. For now, I itereate through
the elements of sequence applying the respective formatting from
numfmt. I do a left take on numfmt before beginning. I need to
also implement a condition for numfmt a sequence. Until then, I can't
cleanly do mixed decimal and integer formatting. I'm also only supporting
strings and numerics at this point.