ppp

Pete’s Pretty Print

Prints any object to screen, file, or returns a string.
Long sequences are automatically line-wrapped and optionally displayed in a neat (vertically aligned) nested format.

The interface consists of three routines (defined in builtins\ppp.e, an autoinclude):

ppOpt(sequence options) Permanently (or until next ppOpt call) change selected formatting options.
pp(object o, sequence options={}) Pretty print the specified object.
string s = ppf(object o, sequence options={}) Return object pretty printed (with embedded \n), no trailing \n.

Examples:
obj={1,{2,{3,3},2},1}
pp(obj,{pp_Nest,0}) gives: 

{1, {2, {3,3}, 2}, 1}

pp(obj,{pp_Nest,1}) gives:

{1,
 {2, {3,3}, 2},
 1}

pp(obj,{pp_Nest,2}) gives:

{1,
 {2,
  {3,3},
  2},
 1}
nest may also be a sequence of {indent,nest_level}.
In the above examples, note how the 1, {, and 1 display in the same column.
If an indent level is specified, spaces are inserted in the "{1" to maintain alignment.
pp(obj,{pp_Nest,{2,2}}) gives:

{ 1,
  { 2,
    { 3,3},
    2},
  1}

pp(obj,{pp_Nest,{3,2}}) gives:

{  1,
   {  2,
      {  3,3},
      2},
   1}