An arg, any object,
is printed without escape characters
princ). If arg is a string,
will be output verbatim.
If arg is
nil it will be printed as
the colon modifier (
~:A) will cause an arg of
nil to be printed as (),
but if arg is a composite structure, such as a list or vector,
any contained occurrences of
nil will still be printed as
A inserts spaces on the right, if necessary, to make the
width at least mincol columns. The
modifier causes the spaces
to be inserted on the left rather than the right.
is the full form of
which allows control of the padding.
The string is padded on the right (or on the left if the
@ modifier is used) with at least minpad copies
of padchar; padding characters are then inserted colinc characters
at a time until the total width is at least mincol.
The defaults are
0 for mincol and minpad,
1 for colinc,
and the space character for padchar.
*print-escape* to false,
*print-readably* to false.
This is just like
~A, but arg is printed with escape
characters (as by
prin1 rather than
princ). The output is
therefore suitable for input to
all the arguments and modifiers that
An argument, any object, is printed obeying every printer control
variable (as by
write). In addition,
~W interacts correctly with depth
abbreviation, by not resetting the depth counter to zero.
~W does not
accept parameters. If given the colon modifier,
to true. If given the at-sign modifier,
~W provides automatic support for the detection of circularity and
sharing. If the value of
*print-circle* is not
~W is applied
to an argument that is a circular (or shared) reference, an appropriate
# marker is inserted in the output instead of printing the argument.