While we're on the plot window...



On Thu, 17 May 2001, William Schelter wrote:

> 
> 
>    The idea would be that Maxima sends "labeled output" to TeXmacs:
>    each subexpression which you might want to select is given a label.
>    TeXmacs may send this label back when the expression is selected,
> 
> The problem I see with labeling input is one has no idea what the user
> might select.  He selects a form on the texmacs side with the mouse.
> It might be terms 20-24 of a polynomial 100 terms long.  Or that might
> be in the numerator or exponent or matrix entry.  As you parse it into
> the internal TexMacs tree formula, you could just record as you start
> a tree what character index you were at in the input string -- or else
> perhaps better have a subsequent parse pass compute the range in case
> the user moused some box ...  In this latter method there is no extra
> storage associated either on the maxima or texmacs side, just a cost
> of running thru the display code a second time.
> 
> I once constructed something like texmacs where I did the display myself,
> and this is what I did.   

Once again, the problem is that there is not just one parsing algorithm
involved : you have at least three parsing algorithms followed by several
tree rewriting passes in order to upgrade to the current TeXmacs version.
It would be very difficult in this stage to associate string locations to
each cursor position.

On the other hand, what you say is not necessarily a problem and
we may inspire ourselves by the way XML handles portions of a document.
In order to specify an entry of a matrix, we might use
something like [Label matrix]/[x,y-position], for a range of terms
[Label polynomial]/[start position]-[end position].

Joris