Stable Dev Build Status Coverage Status

The goal of AutoPrettyPrinting is to remove some of the tedium of rolling your own custom pretty printing code for your custom types. To a given object x, this package associates a horizontally-oriented layout (akin to the default layout) as well as a vertically-oriented layout. The choice of whether to use one or both of these layouts when rendering an object x is made dynamically, both by the heuristics defined in this package, as well as of the dynamic block choice given in .

AutoPrettyPrinting provides macros that enable straightforward pretty printing of custom types using PrettyPrinting.jl. Custom pretty printing code can be specified on a per-MIME type basis and, for a given type, can either be automatically generated using the @def_pprint macro or custom-provided by the user with the @custom_tile macro.


julia> using AutoPrettyPrinting

julia> struct A 

julia> @def_pprint mime_types="text/plain" base_show=true A

julia> a = A(10, "abcd")
A(key1 = 10, key2 = abcd)