Next: Functions and Variables for alt-display, Previous: alt-display, Up: alt-display [Contents][Index]
The alt-display package provides a means to change the way that Maxima displays its output. The *alt-display1d* and *alt-display2d* Lisp hooks were introduced to Maxima in 2002, but were not easily accessible from the Maxima REPL until the introduction of this package.
The package provides a general purpose function to define alternative display functions, and a separate function to set the display function. The package also provides customized display functions to produce output in TeX, Texinfo, XML and all three output formats within Texinfo.
Here is a sample session:
(%i1) load("alt-display.mac")$ (%i2) set_alt_display(2,tex_display)$ (%i3) x/(x^2+y^2) = 1; \mbox{\tt\red({\it \%o_3}) \black}$${{x}\over{y^2+x^2}}=1$$ (%i4) set_alt_display(2,mathml_display)$ (%i5) x/(x^2+y^2) = 1; <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>mlabel</mi> <mfenced separators=""><msub><mi>%o</mi> <mn>5</mn></msub> <mo>,</mo><mfrac><mrow><mi>x</mi> </mrow> <mrow><msup><mrow> <mi>y</mi> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup><mrow> <mi>x</mi> </mrow> <mn>2</mn> </msup> </mrow></mfrac> <mo>=</mo> <mn>1</mn> </mfenced> </math> (%i6) set_alt_display(2,multi_display_for_texinfo)$ (%i7) x/(x^2+y^2) = 1; @iftex @tex \mbox{\tt\red({\it \%o_7}) \black}$${{x}\over{y^2+x^2}}=1$$ @end tex @end iftex @ifhtml @html <math xmlns="http://www.w3.org/1998/Math/MathML"> <mi>mlabel</mi> <mfenced separators=""><msub><mi>%o</mi> <mn>7</mn></msub> <mo>,</mo><mfrac><mrow><mi>x</mi> </mrow> <mrow><msup><mrow> <mi>y</mi> </mrow> <mn>2</mn> </msup> <mo>+</mo> <msup><mrow> <mi>x</mi> </mrow> <mn>2</mn> </msup> </mrow></mfrac> <mo>=</mo> <mn>1</mn> </mfenced> </math> @end html @end ifhtml @ifinfo @example (%o7) x/(y^2+x^2) = 1 @end example @end ifinfo
If the alternative display function causes an error, the error is
trapped and the display function is reset to the default display. In the
following example, the error
function is set to display the
output. This throws an error, which is handled by resetting the
2d-display to the default.
(%i8) set_alt_display(2,?error)$ (%i9) x; Error in *alt-display2d*. Messge: Condition designator ((MLABEL) $%O9 $X) is not of type (OR SYMBOL STRING FUNCTION). *alt-display2d* reset to nil. -- an error. To debug this try: debugmode(true); (%i10) x; (%o10) x
Next: Functions and Variables for alt-display, Previous: alt-display, Up: alt-display [Contents][Index]