In my development of the Emacs mode for GNU APL, I've come across some problems with the way input and output is handled in GNU APL. The effect is that, for example, on OSX the output is duplicated which it's not on Linux. I'm not entirely sure why this is, but it could be partially because of different versions of
libreadline on these platforms.
I'm also having other problems, such as being unable sometime to differentiate between status information and output from a function call. I need to do this since my mode is processing the input and output (I order to implement the function editor for example)
If at all possible, I would like to ask for the following features (I could do it myself and send patches if that would help):
- The usage of libreadline is controlled through a ./configure flag today. I would like it to also be a command line option, so that it can be turned off when run inside Emacs (which provides its own line editing)
- An option to prepend all non-program output with a special prefix so that it's possible to differentiate between the output of, say, ⎕CR 'function' and a program printing the same thing.
The first of these options could be called something like --plain-io, and would also disable the pushing of character to the input stream (which has very unpredictable behaviour when run in Emacs).
The second could be called --prefix-system-output and would have designated prefixes for different types of system output; one prefix for the normal prompts (before the 6 spaces), another for ⎕CR output, etc.
What are your thoughts on this? My mode is coming together pretty well at the moment, but it's hard for me to make it reliable without these features.
Regards,
Elias