[ESS-bugs] Starting evaluation... hangs (another try)

Gregor Gorjanc gregor.gorjanc at bfro.uni-lj.si
Thu Aug 17 08:50:59 CEST 2006


Hello!

I hope I am not sending this twice, however it does seem that I did not
sent mail successfully from my Emacs.

I tried again with my problem of hanging ESS when sending region to R
process. Previous posts on this can be found at

https://stat.ethz.ch/pipermail/ess-help/2006-March/003397.html

For the reference, here is the description:

> I started to use ESS for direct acces to R - I copied R code before to
> terminal and now decided to move to ESS. It is nice, but I constantly
> experience strange hanging when evaluating the code bellow. If I use C-c
> C-n it goes smoothly, but when I use C-c C-r on "data.frame" part or on
> the whole code I can see the Starting evaluation... message in modeline,
> but it does not end it just continues and I can not stop this with C-c C-c.
> 
> Did I misunderstood the ess-eval-region command? I highlight the code
> and issue C-c C-r. Should I do anything else to define a region or ... ?

I figured out what was causing the problem. I tried with emacs "vanilla"
i.e. emacs -q and issued the following:
- C-u M-x R RET --vanilla RET RET (last RET for working directory)
- C-x C-f scratch.R RET
- type some multiline R code such as

cat("this is a simple text in
many (at least two) lines")

and it worked fine with eval-region.

After some trial and error I found out, that the following setting
causes my problem. Start emacs "vanilla" i.e. emacs -q and issue the
following:
- C-u M-x R RET --vanilla RET RET (last RET for working directory)
- C-x C-f scratch.R RET
- type the following code to reproduce the problem (run first options()
line and then cat() with eval-region to see the effect clearly)

options(continue=" ")

cat("this is
simple multiline R code")

- and I get the same error as described above - Starting evaluation...
message appears in modeline and my Emacs is completely hanged (I can
stop with C-g). It appears that ESS is having problems when continue
argument starts with space i.e. options(continue=" +") also causes
problem. I hope this can be fixed so I can normaly use my favourite
continue argument.

Bellow is output produced by debug-on-quit and by M-x ess-submit-bug-report

Thank you for such a great interface to R!

-- debug-on-quit
----------------------------------------------------------------------
Debugger entered--Lisp error: (quit)
  accept-process-output(nil 0 100)
  ess-eval-linewise(#("cat(\"this is\nsimple multiline R code\")" 0 4
(fontified t) 4 37 (face font-lock-string-face fontified t) 37 38
(fontified t)))
  ess-eval-region(24 62 nil)
* call-interactively(ess-eval-region)

-- M-x ess-submit-bug-report
----------------------------------------------------------------------
Emacs  : GNU Emacs 21.4.1 (i486-pc-linux-gnu, X toolkit, Xaw3d scroll bars)
 of 2005-10-03 on trouble, modified by Debian
Package: ess-mode 5.3.0

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/"
 )
[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 Splus6 SplusStart
Splus(R): ess-r-versions-create making M-x defuns for
(R): ess-dialect=nil, buf=*scratch*, start-arg=(4)
 current-prefix-arg=(4)
(inferior-ess 0): ess-start-args=--no-readline  --vanilla
ess-setq-vars-default 0: ess-language=Initial, -dialect=nil, buf=nil,
comint..echoes=nil, comint..sender=comint-simple-send
ess-setq-vars-default 1: ess-language=S, -dialect=R, buf=nil,
comint..echoes=nil, comint..sender=comint-simple-send
(inf-ess 1): lang=S, dialect=R, tmp-dialect=R, buf=*scratch*
(inf-ess 1.1): procname=R temp-dialect=R, buf-name=*R*
(inferior-ess) Method #3 start=/home/ggorjan/ buf=*R*
(ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil,
comint..echoes=nil, comint..sender=comint-simple-send
(inf-ess 2.1): ess-language=S, ess-dialect=R buf=*R*
(inf-ess 2.2): start args = --no-readline  --vanilla,
inf-ess-start-args=--no-readline  --vanilla
(inf-ess finish [S(R), R(nil,nil)]
(ess-multi 0):  inf-ess-start-args=--no-readline  --vanilla,
comint-..echoes=nil
(i-ess 1): buf=*R*, lang=S, comint..echo=nil,
comint..sender=comint-simple-send,
(i-ess 2): buf=*R*, lang=S, comint..echo=t,
comint..sender=inferior-R-input-sender,
(ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t,
comint..sender=inferior-R-input-sender
(i-ess 3): curr-buf=*R*, comint..echo=t,
comint..sender=inferior-R-input-sender,
(ess-multi post inf-ess: start-args=--no-readline  --vanilla,
comint-echoes=t
(ess-multi 1):  start-args=--no-readline  --vanilla
Making Process...Buf *R*, Proc R, Prog R
 Start File=nil, Args= --no-readline  --vanilla.
(R): inferior-ess-language-start=options(STERM='iESS', editor='emacsclient')
(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=scratch.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-retr-lastvalue-command . assign(".Last.value", .ess.lvsave,
envir=baseenv())
) (ess-save-lastvalue-command . assign(".ess.lvsave", get(".Last.value",
envir=baseenv()))
) (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.

-- 
Lep pozdrav / With regards,
    Gregor Gorjanc

----------------------------------------------------------------------
University of Ljubljana     PhD student
Biotechnical Faculty
Zootechnical Department     URI: http://www.bfro.uni-lj.si/MR/ggorjan
Groblje 3                   mail: gregor.gorjanc <at> bfro.uni-lj.si

SI-1230 Domzale             tel: +386 (0)1 72 17 861
Slovenia, Europe            fax: +386 (0)1 72 17 888

----------------------------------------------------------------------
"One must learn by doing the thing; for though you think you know it,
 you have no certainty until you try." Sophocles ~ 450 B.C.




More information about the ESS-bugs mailing list