[IPython-User] switching between display representations in the frontend

Matthias BUSSONNIER bussonniermatthias@gmail....
Sun Mar 3 07:46:41 CST 2013


Le 3 mars 2013 à 14:26, Thomas Hisch a écrit :

> Hi,
> 
> On Sun, Mar 3, 2013 at 12:11 PM, Matthias BUSSONNIER
> <bussonniermatthias@gmail.com> wrote:
>> Hi,
>> Le 3 mars 2013 à 08:41, Thomas Hisch a écrit :
>> 
>>> Hello,
>>> 
>>> the sympy printing extension configures formatters for rendering latex
>>> expressions: image/png and text/latex. According to [0] all
>>> representations of an object for which multiple formatters are
>>> registers will be calculated and sent to the frontend but only one is
>>> displayed in the frontend. Is there a way to switch the default
>>> displayed repr in the frontend (without using display_xxx manually for
>>> each obj)?
>> 
>> On dev version of the notebook, you can monkey-patch the javascript :
>> 
>>        IPython.OutputArea.display_order
>> 
>> Which default value is :
>> 
>>        [ "javascript", "html", "latex", "svg", "png", "jpeg", "text" ]
>> 
>> It is not really supported yet, and have chance of not working at load time.
> 
> I want to avoid monky-patching the javascript part of the notebook as
> a fix for the 'display-order' problem should be integrated into the
> sympy printing extension. I can think of disabling the latex_formatter
> with latex_formatter.enabled=False in [0] and if mathjax rendered
> output is desired then set 'enabled' to True.

I think that it is what %load_ext sympyprinting does.  It enables the Latex representation.

> 
> @sympy devs: is enabling and disabling the latex_formatter an option
> to be able to switch between png output and mathjax output in the
> notebook/qtconsole? (This problem is related to [1])

I suppose the question of enabling/disabling the representation is a question of computation time, 
but otherwise, I suggest not to disable representations. 
Especially, it is not because a representation is not shown in one frontend that it is not stored in the notebook document.

All the representation are computed, and store so that nbconvert can use it when converting for example.

So it is **really** a question of frontend to know wether or not show latex or png or jpeg.

-- 
Matthias





> Regards
> thomas
> 
> 
> [0] https://github.com/sympy/sympy/blob/master/sympy/interactive/printing.py#L144
> [1] https://github.com/sympy/sympy/pull/1776
>> --
>> Matthias
>> 
>> 
>>> 
>>> Regards
>>> Thomas
>>> 
>>> [0] http://ipython.org/ipython-doc/dev/api/generated/IPython.core.display.html
>>> _______________________________________________
>>> IPython-User mailing list
>>> IPython-User@scipy.org
>>> http://mail.scipy.org/mailman/listinfo/ipython-user
>> 
>> _______________________________________________
>> IPython-User mailing list
>> IPython-User@scipy.org
>> http://mail.scipy.org/mailman/listinfo/ipython-user
> _______________________________________________
> IPython-User mailing list
> IPython-User@scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-user



More information about the IPython-User mailing list