     [ \ IN: pprint-word pprint-vocab ] with-pprint ;
 
 : in. ( vocab -- )
-    [ write-in nl ] when* ;
+    [ write-in ] when* ;
 
 : use. ( seq -- )
     [

io.streams.string io.styles kernel make math math.parser namespaces
parser prettyprint.backend prettyprint.config prettyprint.custom
prettyprint.sections quotations sequences sorting strings vocabs
vocabs.parser words ;
IN: prettyprint

<PRIVATE

            \ USING: pprint-word
            [ pprint-vocab ] each
            \ ; pprint-word
        ] with-pprint
    ] unless-empty ;

: use/in. ( in use -- )
    dupd remove [ { "syntax" "scratchpad" } member? not ] filter
    use. nl in. ;

: vocab-names ( words -- vocabs )
    dictionary get
    [ [ words>> eq? nip ] with assoc-find 2drop ] curry map sift ;

: prelude. ( -- )
    in get use get vocab-names prune in get ".private" append swap remove use/in. ;

[
    nl
    { { font-style bold } { font-name "sans-serif" } } [
        "Restarts were invoked adding vocabularies to the search path." print
        "To avoid doing this in the future, add the following USING:" print
        "and IN: forms at the top of the source file:" print nl
    ] with-style
    { { page-color COLOR: light-gray } } [ prelude. ] with-nesting
    nl nl
] print-use-hook set-global

PRIVATE>

: with-use ( obj quot -- )
    make-pprint use/in. nl do-pprint ; inline

: with-in ( obj quot -- )
    make-pprint drop [ write-in bl ] when* do-pprint ; inline
