Interactiveness
Prof Brian Ripley wrote:
On Tue, 11 Dec 2007, Bjarni Juliusson wrote:
I'm developing R integration for a project called Bioclipse at Uppsala University. The current implementation works by simply forking an R and sending it text (with some substitutions on it) down a pipe, getting the printed output back up another pipe. This of course works fine, except it runs into one problem: R finds a pipe on its stdin and decides to be "non-interactive", which means that as soon as the user makes a typo and causes an error, R exits.
Actually, not so. The default error handler for non-interactive use is to do that, but you can change it.
Could you perhaps just point me in the right direction here? I really have no idea how to do this. Also, what exactly does non-interactive mode imply, besides this default error handling behaviour?
I checked the source, and it's a couple of isatty()'s in the two files named system.c that are doing it. They are of course intended to be a feature, but in this case it causes us trouble. Would it be possible to get a command line switch to control this behaviour? I'm not sure pseudo terminals can be used portably, or can they?
They can, and are e.g. by ESS (except on Windows, where there is already a switch). I think you need to look a bit more carefully at what other projects do.
It needs to be portable to Windows. I'll look into this possibility next. Didn't mean to ask before I had done my homework. Thanks for your help! Bjarni
INFORMATION WANTS TO BE FREE