[ESS] ess-mode 5.3.6; ESS locks up with par(ask = TRUE) etc and C-c C-r

Richard M. Heiberger rmh at temple.edu
Wed Feb 6 19:42:06 CET 2008


LifeCycleSavings <- data.frame(matrix(rnorm(100), 20, 5,
                               dimnames=list(
                                 NULL,
                                 c("sr","pop15","pop75","dpi","ddpi"))))

par(ask = TRUE)

lm.SR <- lm(sr ~ pop15 + pop75 + dpi + ddpi, data = LifeCycleSavings) 
plot(lm.SR) 
summary(lm.SR) 


ctrl-G gets emacs control back.  On Windows, clicking the R Graphics window
once per graph is the way I got R control back.  The graphics device said
that
ENTER (implied in the *R* buffer) would get the additional graphs to show.
It didn't.  Only clicking the graph window got it back.

[complaint: you didn't put par(ask=TRUE) in the list of R statements, only
in the subject line.  That cost a few minutes trying to figure out what the
problem
was.]

I normally do  par(mfrow=c(2,2)) before a plot.lm().  This specific set of
graphs is
not usually worth a full page each.  That may not be relevant if this
example is
a portable example for some other more complex set of graphs.  Another style
issue
is that I always have graphic history recording on with
   options(graphics.record=TRUE)
So I would just page back through the graph window to look at the earlier
graphs.

-----Original Message-----
From: ess-help-bounces at stat.math.ethz.ch
[mailto:ess-help-bounces at stat.math.ethz.ch] On Behalf Of Gavin Simpson
Sent: Wednesday, February 06, 2008 01:00 PM
To: ess-help at stat.math.ethz.ch
Subject: [ESS] ess-mode 5.3.6; ESS locks up with par(ask = TRUE) etc and C-c
C-r

hits=0.0 tests=none
X-USF-Spam-Flag: NO

Dear list:

Consider the following code chunk in an ESS R buffer:

lm.SR <- lm(sr ~ pop15 + pop75 + dpi + ddpi, data = LifeCycleSavings)
plot(lm.SR)
summary(lm.SR)

If one highlights this region and does C-c C-r (to evaluate the region),
Emacs+ESS+R lock up completely and no matter what I cannot regain
control.

As it is not immediately obvious which functions are going to do this to
you, is there any way that ESS can work around the asking for user input
in the middle of a region commit?

Is there a key-combo that I am missing that would allow me to regain
control? At the moment I am resorting to killing R and Emacs as C-c C-c
and C-c C-z don't appear to do anything.

All the best,

G

## info copied from the bug reporting tool in ESS (wasn't sure if Emacs
would send mail as I've never configured it to do so)

[ess-site.el]: ess-customize-alist=nil 
[ess-site.el _2_]: ess-customize-alist=nil 
(S): ess-s-versions-create making M-x defuns for 
 
(R): ess-r-versions-create making M-x defuns for 
 
(ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=nil,
comint..sender=comint-simple-send
(ess-mode-1): ess-language=S, ess-dialect=R buf=time_series_analysis_guide.R

(ess-mode-1.5): alist=((ess-local-customize-alist quote R-customize-alist)
(ess-dialect . R) (ess-suffix . R) (ess-dump-filename-template
ess-replace-regexp-in-string S$ ess-suffix ess-dump-filename-template-proto)
(ess-mode-syntax-table . R-syntax-table) (ess-mode-editing-alist .
R-editing-alist) (ess-change-sp-regexp . ess-R-change-sp-regexp)
(ess-help-sec-regex . ess-help-R-sec-regex) (ess-help-sec-keys-alist .
ess-help-R-sec-keys-alist) (ess-loop-timeout . ess-S-loop-timeout)
(ess-cmd-delay . ess-R-cmd-delay) (ess-function-pattern .
ess-R-function-pattern) (ess-object-name-db-file . ess-r-namedb.el)
(ess-imenu-mode-function quote ess-imenu-R) (inferior-ess-program .
inferior-R-program-name) (inferior-ess-objects-command .
inferior-R-objects-command) (inferior-ess-font-lock-keywords .
inferior-ess-R-font-lock-keywords) (inferior-ess-search-list-command .
search()
) (inferior-ess-help-command . help("%s", htmlhelp=FALSE)
) (inferior-ess-help-filetype) (inferior-ess-exit-command . q())
(inferior-ess-exit-prompt . Save workspace image? [y/n/c]: )
(inferior-ess-primary-prompt . \([A-Z][][A-Za-z0-9.]*\)*> )
(inferior-ess-secondary-prompt . + ?) (inferior-ess-start-file)
(inferior-ess-start-args . ) (ess-STERM . iESS) (ess-editor . R-editor)
(ess-pager . R-pager) (ess-language . S) (inferior-ess-exit-command . q()
) (inferior-ess-language-start eval inferior-S-language-start)
(comint-use-prompt-regexp-instead-of-fields . t)) 
(ess-mode-1.6): editing-alist=((paragraph-start concat \s-*$\|
page-delimiter) (paragraph-separate concat \s-*$\| page-delimiter)
(paragraph-ignore-fill-prefix . t) (require-final-newline . t)
(comment-start . #) (comment-add . 1) (comment-start-skip . #+ *)
(comment-column . 40) (indent-line-function quote S-indent-line)
(parse-sexp-ignore-comments . t) (ess-set-style . ess-default-style)
(ess-local-process-name) (ess-mode-syntax-table . S-syntax-table)
(add-log-current-defun-header-regexp . ^\(.+\)\s-+<-[ 	
]*function) (font-lock-defaults quote (ess-R-mode-font-lock-keywords nil nil
((46 . w) (95 . w))))) 
(ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=nil,
comint..sender=comint-simple-send

Finished setting up ESS-mode.


Emacs  : GNU Emacs 22.1.1 (x86_64-redhat-linux-gnu, GTK+ Version 2.12.1)
 of 2007-11-06 on xenbuilder2.fedora.redhat.com
Package: ess-mode 5.3.6

current state:
==============
(setq
 ess-language "S"
 ess-dialect "R"
 ess-ask-for-ess-directory t
 ess-ask-about-transfile nil
 ess-directory nil
 ess-keep-dump-files "always"
 ess-source-directory "/tmp/"
 )

-- 
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
 Dr. Gavin Simpson             [t] +44 (0)20 7679 0522
 ECRC, UCL Geography,          [f] +44 (0)20 7679 0565
 Pearson Building,             [e] gavin.simpsonATNOSPAMucl.ac.uk
 Gower Street, London          [w] http://www.ucl.ac.uk/~ucfagls/
 UK. WC1E 6BT.                 [w] http://www.freshwaters.org.uk
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%

______________________________________________
ESS-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/ess-help




More information about the ESS-help mailing list