2007/4/11, Aditya Mahajan <adityam@umich.edu>:

Hi Aditya,

it is more a problem related to horizontal and vertical modes/boxes, you can

test it by placing \startformula .. \startformula into a hbox/vbox and only the

vbox solution works.

This is working

\vbox

{\startformula

x^2 = x\cdot x

\stopformula}

This fails

\hbox

{\startformula

x^2 = x\cdot x

\stopformula}

You can use disply math in a frame by setting explivied values for width

and height of the frame.

\framed

[width=5cm,height=4cm]

{\startformula

x^2 = x\cdot x

\stopformula}

This solution works also in combination with a buffer

\startbuffer

\startformula

x^2 = x\cdot x

\stopformula

\stopbuffer

\framed[width=6cm,height=4cm]{\getbuffer}

On Thu, 22 Mar 2007, Taco Hoekwater wrote:

> Wolfgang Werners-Lucchini wrote:

>> Hallo!

>>

>> The following simple example doesn't compile

>> (ConTeXt ver. 2007.01.02 and Live ConTeXt).

>>

>> What am I doing wrong?

>

> Diagnostics:

>

> The problem is not caused by the \framed, but by the (lack of)

> parsing done by the buffering routines.

> Because the \startformula is not expanded, TeX does not realise

> you are in math mode, so it objects to the ^ character.

>

>

> This is 'not right' but I suspect it is not all that simple

> to fix the context core to do this properly (I would love to be

> proved wrong).

This is a serious bug. Even a simple example fails with the same

error.

\starttext

\framed{

\startformula

x^2 = x\cdot x

\stopformula}

\stoptext

A quick workaround is to use frametext instead of framed, but I am

pretty sure that the above example used to work at some stage.

Aditya

Hi Aditya,

it is more a problem related to horizontal and vertical modes/boxes, you can

test it by placing \startformula .. \startformula into a hbox/vbox and only the

vbox solution works.

This is working

\vbox

{\startformula

x^2 = x\cdot x

\stopformula}

This fails

\hbox

{\startformula

x^2 = x\cdot x

\stopformula}

You can use disply math in a frame by setting explivied values for width

and height of the frame.

\framed

[width=5cm,height=4cm]

{\startformula

x^2 = x\cdot x

\stopformula}

\startbuffer

\startformula

x^2 = x\cdot x

\stopformula

\stopbuffer

\framed[width=6cm,height=4cm]{\getbuffer}

Wolfgang