2 USING: kernel arrays strings sequences assocs io io.styles prettyprint colors
3 combinators.conditional ;
7 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
9 : write-wrapped ( string -- ) H{ { wrap-margin 500 } } [ write ] with-nesting ;
11 ! : print-elt ( val -- )
13 ! { [ string? ] [ write-wrapped ] }
14 ! { [ array? ] [ [ . ] each ] }
15 ! { [ drop t ] [ . ] }
19 USING: accessors vocabs help.markup ;
21 : print-elt ( val -- )
23 { [ vocab? ] [ [ name>> ] [ ] bi write-object ] }
24 { [ string? ] [ write-wrapped ] }
25 { [ array? ] [ [ . ] each ] }
30 : print-grid ( grid -- )
31 H{ { table-gap { 10 10 } } { table-border T{ rgba f 0 0 0 1 } } }
32 [ [ [ [ [ print-elt ] with-cell ] each ] with-row ] each ] tabular-output ;
34 : print-table ( assoc -- ) >alist print-grid ;
36 : print-seq ( seq -- ) [ 1array ] map print-grid ;