rgheck said:     (by the date of Fri, 05 Mar 2010 07:46:39 -0500)

> On 03/05/2010 07:29 AM, Helge Hafting wrote:
> > And so on. Apparently, there are many limitations though. Maxima can do
> > more, the communication between LyX and maxima is limited. You can't 
> > do matrix multiplication, for example.
> >
> All of this is correct, but the infrastructure for doing more is there. 
> Look at src/mathed/MathExtern.cpp and the various maxima() methods.
> 
> We'd be very, very happy to have someone work on this.

A warm welcome is very encouraging. I'll check that file.

I know nothing about how it is done, yet, but still I have some
simple vision, correct me when I'm wrong:

- to have a working connection with background maxima, we need a
  maxima buffer. This buffer (a list of %inputs) is not a part of
  latex/LyX document, so it should be stored somewhere. I was
  thinking about putting it into .tex (.lyx) file as a comment, with
  some magic keyword, like following:

% LYX+MAXIMA buffer, do not edit by hand, START
%
% * [wxMaxima: input   start ] */
% e1:ellipse : x^2/a^2+y^2/b^2=1;
% e2:line    : A*(x-x0)+B*(y-y0)=0;
% /* [wxMaxima: input   end   ] */
%
% LYX+MAXIMA buffer, do not edit by hand, END

the first two characters (the "% ") are always stripped, the rest is
treated as-is: the maxima input file format.

- there could be a split-window with just the maxima input buffer.

- interesting parts from the maxima buffer would be copied into
  latex/lyx document, by using some sort of referencing.

- plot2d/3d would generate .ps files, provided correct gnuplot
  parameters to generate .ps files (which I happen to know).
  Pictures generated in this way would be entered into document
  structure in the same manner as the equations.

- compiling lyx+maxima document, would mean to do some preprocessing:
    + first execute the maxima buffer in fresh maxima session. This
      would calculate stuff, and generate .ps files.
    + enter the referenced equations in their latest form (freshly
      calculated) into their proper places in the latex document
    + then continue the normal compilation, like invoking pdflatex
      or others.

my head is bulging with ideas, but the time is really short.
I'll check what you've told me, tell me more. Do not expect me to be fast.

-- 
Janek Kozicki                               http://janek.kozicki.pl/  |

Reply via email to