kim.pilegaard@risoe.dk (Kim Pilegaard) writes:> When I try to invoke R from xemacs I get the following responses: > > ESS starting data directory? ~/ > > "Process R is not running". > > This is what the R buffer shows: > > R : Copyright 1997, Robert Gentleman and Ross Ihaka > Version 0.61.0 Alpha (December 21, 1997) > > R is free software and comes with ABSOLUTELY NO WARRANTY. > You are welcome to redistribute it under certain conditions. > Type "license()" for details. > > Type "demo()" for some demos, "help()" for on-line help, or > "help.start()" for a HTML browser interface to help. > > "TERMCAP", line 0, terminal 'emacs': /usr/share/terminfo: permission denied > > Process R exited abnormally with code 1 at Fri Jan 9 08:11:59 1998 > > R runs correct from the shell and is installed as /usr/local/bin/R. > I am running Linux 2.0, Xemacs 19-14 and R-0.61.It looks like R is trying to run with the readline history facilities started. It shouldn't do this when you are running under ESS. One quick fix might be to install a terminfo entry for the "emacs" terminal type but I'm not sure how you do that. I had thought that when ESS started the R process it should send the -noreadline flag to it. From the R manual page The following options are present to support the use of R from other programs. In particular, the -noreadline option exists so that R can be run under emacs(1) and xemacs(1) using ESS. -noreadline Turn off the use of the readline(3) command line editing. If R is getting the -noreadline flag properly then my guess is that the call to initialize the readline library (probably in $RHOME/src/unix/system.c) is not being protected by an if statement that checks for this flag. Earlier I reported a problem in $RHOME/src/unix/system.c that some ifdef's were checking for HAVE_READLINE_HISTORY_H but that variable was not being defined by the autoconfigure script. I'm not sure if that has been corrected yet. When I was looking for those definitions I noticed the autoconfiguration on the version I compiled for Debian Linux 2.0 does not set HAVE_READLINE but that version on Debian Linux 1.3 does. This looks like another autoconfigure problem. -- Douglas Bates bates@stat.wisc.edu Statistics Department 608/262-2598 University of Wisconsin - Madison http://www.stat.wisc.edu/~bates/ -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
Douglas Bates <bates@stat.wisc.edu> writes:> It looks like R is trying to run with the readline history facilities > started. It shouldn't do this when you are running under ESS. > > One quick fix might be to install a terminfo entry for the "emacs" > terminal type but I'm not sure how you do that. > > I had thought that when ESS started the R process it should send the > -noreadline flag to it. From the R manual page > > The following options are present to support the use of R > from other programs. In particular, the -noreadline > option exists so that R can be run under emacs(1) and > xemacs(1) using ESS. > > -noreadline > Turn off the use of the readline(3) command line > editing. > > If R is getting the -noreadline flag properly then my guess is that > the call to initialize the readline library (probably in > $RHOME/src/unix/system.c) is not being protected by an if statement > that checks for this flag.Maybe I pointed the finger in the wrong direction. I don't see that the -noreadline flag is being passed to R when invoked by ESS. cd /usr/lib/xemacs/site-lisp/ESS-5.0/ grep -n noreadline *.el /dev/null # no responses. Try starting R by C-u M-x R and when it asks for "Starting Args ?" put in the -noreadline flag. -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
ESS-5.0 does not yet contain the "-noreadline" flag. ESS-5.0 came out only very shortly after R 0.60, if "-noreadline" would have been builtin, no R version < 0.60 would have worked.... Here is the patch --- apply it if you are willing to only use R versions >= 0.60 (with ESS): Excuse that I didn't give this answer earlier... --------------- Martin Maechler <maechler@stat.math.ethz.ch> <>< Seminar fuer Statistik, ETH-Zentrum SOL G1; Sonneggstr.33 ETH (Federal Inst. Technology) 8092 Zurich SWITZERLAND phone: x-41-1-632-3408 fax: ...-1086 http://www.stat.math.ethz.ch/~maechler/ --- essd-r.el.~1~ Mon Nov 24 18:26:40 1997 +++ essd-r.el Fri Dec 5 09:21:17 1997 @@ -92,9 +92,10 @@ (format "(R): current-prefix-arg=%s \n" current-prefix-arg)) - (let ((r-start-args (if start-args (read-string "Starting Args ? ") nil))) - (if (not start-args) (inferior-ess) - (inferior-ess r-start-args)))) + (let ((r-start-args (concat "-noreadline " + (if start-args (read-string + "Starting Args [other than `-noreadline'] ? ") nil)))) + (inferior-ess r-start-args))) -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- r-devel mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html Send "info", "help", or "[un]subscribe" (in the "body", not the subject !) To: r-devel-request@stat.math.ethz.ch _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._