Is there a good universal method that allows the making of a frame around every function. In the output, functions should remain unchanged (no evaluation, or any other changes) and each function should have frame.
For example, to make the frame around Plus[1, Plus[Plus[1, 1], Plus[Plus[1, 1], 1]]]
something like MakeNiceFrames[Plus[1, Plus[Plus[1, 1], Plus[Plus[1, 1], 1]]]]
. An output should look exactly same as in input Plus[1, Plus[Plus[1, 1], Plus[Plus[1, 1], 1]]]
with every function (including head and closing bracket) separately framed.
It will be nice to have that kind of framing for visual separations of functions while debugging. I have experimented with Framed[]
. But each function needs the use of separate Framed[]
function and functions are actually evaluated, what makes it makes inconvenient to use.
Plus[1, Plus[Plus[1, 1], Plus[Plus[1, 1], 1]]]
with every function (including head and closing bracket) separately framed." Do you think anything other should be added? $\endgroup$TreeForm[Hold[ Plus[1, Plus[Plus[1, 1], Plus[Plus[1, 1], 1]]] ]]
meets the use case in a different (and possibly more useful) way. $\endgroup$