On Jan 24, 2008 9:43 PM, Jason Grout <[EMAIL PROTECTED]> wrote: > > Following up on William's tip to look at the displayhook function, here > is a function that will enable "pretty-printing" by default in the notebook: > > def pretty_print (object): > if object is None: > return > import __builtin__ > __builtin__._=object > try: > print html("$"+latex(object)+"$") > except: > import sys > sys.__displayhook__(object) > > def notebook_pretty(enable=True): > import sys > if enable: > sys.displayhook = pretty_print > else: > sys.displayhook = sys.__displayhook__ > > # To enable the pretty-printing > notebook_pretty(True) > > Of course the function names could (and probably should) change. This > function makes the notebook much, much more user-friendly to new users, > I think. Where should this function be located? Also, should it be a > switch at the top of the notebook, like the evaluation drop-down menu? > > One problem with the above is that graphics objects are not shown by > default (try doing plot(sin(x),1,2) after the above code). Someone > familiar with how graphic objects are shown by default now could > probably trivially fix that problem, though (any takers?). >
Sure. This is like yours but slightly nicer and deals with graphics nicely (and also lists of graphics objects): def pretty_print (object): if object is None: return if isinstance(object, (sage.plot.plot.Graphics, sage.plot.plot3d.base.Graphics3d)): print repr(object) return import __builtin__ __builtin__._=object try: print html("$$"+latex(object)+"$$") except: import sys sys.__displayhook__(object) def notebook_pretty(enable=True): import sys if enable: sys.displayhook = pretty_print else: sys.displayhook = sys.__displayhook__ # To enable the pretty-printing notebook_pretty(True) --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---