Next: FORMAT Pretty Printer Operations, Previous: FORMAT Floating-Point Printers, Up: Formatted Output
An arg, any object,
is printed without escape characters
(as by princ
). If arg is a string,
its characters
will be output verbatim.
If arg is nil
it will be printed as nil
;
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 nil
.
~
mincolA
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.
~
mincol,
colinc,
minpad,
padcharA
is the full form of ~A
,
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.
~A
binds *print-escape*
to false,
and *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 read
. ~S
accepts
all the arguments and modifiers that ~A
does.
~S
binds *print-escape*
to t
.
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, ~W
binds *print-pretty*
to true. If given the at-sign modifier, ~W
binds *print-level*
and *print-length*
to nil
.
~W
provides automatic support for the detection of circularity and
sharing. If the value of *print-circle*
is not nil
and ~W
is applied
to an argument that is a circular (or shared) reference, an appropriate
#
n#
marker is inserted in the output instead of printing the argument.