There is something like a problem with the distribution of gnuplot built against GNU readline : the latter is powerful but GPL, whereas the latter's license isn't GPL-compatible because of the patch restiction).
I offer here to implement an external program that would act as an interactive interface to gnuplot. The goal is to have it:
- with the same features as gnuplot current builtin interface
The first goal can only be reached if the this external program is talking to gnuplot in a straightforward way (in FSF, the "semantics of the communication" must not be
"intimate"), and if it written with code not coming from gnuplot.
The design idea:
- use readline to handle all the interesting features (command-line editing, history),
- read its input from stdin,
- send commands to and receive answers from gnuplot by piping gnuplot stdin and stdout,
- display messages coming from gnuplot through its stdout,
- knows that gnuplot has finished processing a command.
As far as I can tell, an external program driving gnuplot through a pipe has no way to know it has processed a command. However, I think this can be implemented using ASCII control characters (originally designed to talk to printers, as the whole ASCII set), such as character number 6, which means "acknowledged".
I will post patches here to implement this idea.
Please do not hesitate to comment.