On Sun, Apr 10, 2005 at 10:52:54AM +0300, Martin Vermeer wrote:
> On Sun, Apr 10, 2005 at 12:05:29AM +0200, Andre Poenitz wrote:
> > On Sat, Apr 09, 2005 at 04:46:45PM +0200, Helge Hafting wrote:
> > > The problem is mostly the same if applying the n-root, one expect
> > > the selection to go under the root, not above it. So perhaps
> > > the n-root ought to be a little special?  It'd be consistent
> > > with the square root.
> > 
> > Simply swap the meaning of idx == 0 and idx == 1 in MathRootInset then.
> > Auto-insertion goes to cell 0, if that should be the part below the
> > root, this cell should have index 0.
> > 
> > Andre'
> 
> Makes absolute, perfect sense. Helge, this is easy to do. Just open up 
> math_rootinset.C and replace all occurrences of cell(0) with cell(1),
> and vice versa.
> 
> Let us know if it works... and post the patch here ;-)

Tried it, and it had "intereesting" side effects, as expected.

I swapped cell(0) and cell(1) everywhere.  Test results:

1. Applying n-root over a selection improved.            (Good)
2. DVI output still matches what's on screen        (no change)
3. "edit->math->computer algebra->maxima" 
   results still correct.                           (no change)
4. An old saved document with the fourth root of 81
   now loaded as the 81th root of four. Saving and 
   reloading also swaps the n-root components.     (Quite bad!)
5. Keyboard navigation is now silly - passing through 
   an n-root with right-arrow goes under the root first
   and then into the n-part, and finally exits
   the n-root and moves on through the math.            (Bad!)  
6. The third root special now sticks the "3" under
   the root sign.                                      (Wrong)

So I wonder if this was the right approach - or would a special
case in pasting be better?  

If we go with this approach, I believe I could track down issue(3).
The "write" part in math_rootinset.C was changed, and we need
a corresponding change wherever the "read" takes place. Issue(6)
is probably not that hard either, or the third root
special could be removed as suggested.

But what to do about issue(5)?  Will that require special cases
for the n-root in math navigation?  Where would that be?

I wonder if this was the right approach - or would a special
case in pasting be better?

Helge Hafting



Reply via email to