Maxima - new GUI



Dear Abdulhaq, 

On Wed, 2004-10-13 at 12:00, Abdulhaq Lynch wrote:
> Yes, there is a very clean separation between the Maxima engine and the GUI. 
> Whether it is a good 'interface' is open to debate  - the error you have 
> experienced is due to Kayali trying to parse what the output prompt is on 
> your version of maxima - this seems to vary and I don't, of course, have 
> access to all the versions out there.

You are working much, much too hard. You appear to think that Maxima's
interface is stuck in the stone age. With the release of Maxima 5.9.1,
however, we are now firmly in the bronze age. (You did read the release
notes for 5.9.1, didn't you?) There is some very terse documentation
available in doc/implementation/external-interface.txt. As an example,
put the following in a file called interface-example.lisp:

---------------------------------------------------------------
(setf *prompt-prefix* "_INTERFACE_EXAMPLE_PROMPT_PREFIX_")
(setf *prompt-suffix* "_INTERFACE_EXAMPLE_PROMPT_SUFFIX_")
(setf *general-display-prefix*
"_INTERFACE_EXAMPLE_GENERAL_DISPLAY_PREFIX_")
(setf *maxima-prolog* "_INTERFACE_EXAMPLE_MAXIMA_PROLOG_")
(setf *maxima-epilog* "_INTERFACE_EXAMPLE_MAXIMA_EPILOG_")
---------------------------------------------------------------

Now, run maxima as follows:
	maxima --preload-lisp=interface-example.lisp
If you have questions about the new interface hooks, please send them to
the list.

You might also find using the socket interface via
	maxima --server=4008 --preload-lisp=interface-example.lisp
to be superior to messing around with pyexpect. Maybe you won't, I don't
know. The socket interface is, unfortunately, undocumented. The one
trick to know is that the maxima "server" is really a socket client. The
gui has to be the socket server.

> Out of curiosity, are most people using a prompt of %i and %o ? I had an 
> earlier version a couple of weeks ago that had C and D. Are there any other 
> prompts or is that it? Is there a way of configuring Maxima to specify the 
> prompt (preferably via a Maxima command rather than a config file change)?

OK, I see that you haven't read the release notes for 5.9.1. Please read
the file NEWS in the 5.9.1 tarball.

--Jim