Over the spring break I put together a GTK front-end to Maxima. It uses the
same socket communication that Xmaxima uses (took a while to figure out).
Anyways, the code I've written so far is pretty basic though it has a couple
of nice features. First off, the output window looks nice as it is
anti-aliased and colored. Second there is a 10 command history that can be
accessed using the cursor keys and the drop down menu. There are also
problems, the default anti-aliased font is not fixed width. Therefore the
output can get munged a bit on complicated equations. There is also a crash
when you close the program. The plot_format doesn't work for the open math
stuff so I just use gnuplot.
plot2d(sin(x), [x,-1,1], ['plot_format,gnuplot]);
Other than that, it is somewhat near the functionality of Xmaxima.
For this version, the source will need to be modified for your specific
machine.
Before compiling, the file main.h will need to be changed. The definition
DEFAULT_MAXIMA_PATH should be the absolute location of your Maxima binary and
the definition MAXIMA_INT_LISP_PRELOAD should be the absolute location of the
file server.lisp (which will be in the source directory or with the Xmaxima
files).
To compile the source code (Unix only probably), you need the standard
autotools, GTK 2.0, and GNet 2.0. Type './configure ; make'. The binary will
be located in the source directory since I haven't made the installation part
yet.
Feel free to contribute some source. :) I work on it during my breaks from
school so development will be slow by myself. I'm planning to add function
editors, matrix editors, plot editors, and a settings saver.
Finally, here is the URL.
http://www.geocities.com/wes_connell302/
Let me know what you think about it.
p.s. I can write a message about how Xmaxima communicates with Maxima if
someones needs it. I remember reading a message on this list describing that
communication link as 'uncharted territory'.
--
Wes Connell
wc1022@txstate.edu