[ESS-bugs] ess-mode 12.09-2 [<unknown>]; C-x C-r to evaluate a region with a simple if-else statement hangs. C-g then C-c C-c brings back the R prompt and prints the first line of the if statement, so it seems like its hanging there. Evaluated line...

Vitalie Spinu spinuvit at gmail.com
Wed May 29 15:51:40 CEST 2013


Do you use non-standard secondary prompt? It should be the standard +.

As nobody can see this problem, it probably means that it is your
specific configuration. Could you investigate what is causing the
problem? Or post here your complete ESS/R configuration.

An easy workaround for you would be to set ess-eval-visibly to something
else than t. That will solve the issue. Would be still good to know what
is causing it.


    Vitalie


 >> Jake Burkhead <jake.burkhead at yougov.com>
 >> on Tue, 28 May 2013 19:34:12 +0000 wrote:

 > This problem persists in ESS 13.05 using both Emacs 23.3.1,
 > 24.3.1. It happens for any multi-line expression. So another example
 > is if I call a function with arguments spaced out over multiple lines
 > ESS/R will hang on the first line of the code. ie.


 > plot(1:100,
 >       xlab = "foo",
 >       ylab = "gg")

 > Will not evaluate and C-g will show just "plot(1:100," at the R prompt, C-c C-c will kill the command and bring back the R prompt

 > Jake Burkhead
 > Analyst
 > YouGov
 > What the world thinks

 > 111 W. 24th Street
 > New York, NY 10011
 > T: +1-646-537-9827
 > jake.burkhead at yougov.com
 > http://www.yougov.com

 > ________________________________________
 > From: Vitalie Spinu [spinuvit at gmail.com]
 > Sent: Wednesday, May 15, 2013 9:08 AM
 > To: Jake Burkhead
 > Cc: ess-bugs at r-project.org
 > Subject: Re: [ESS-bugs] ess-mode 12.09-2 [<unknown>]; C-x C-r to evaluate a region with a simple if-else statement hangs. C-g then C-c C-c brings back the R prompt and prints the first line of the if statement, so it seems like its hanging there. Evaluated line...

 > Nothing of this kind here. Debian ESS should be upgraded to 13.05 today
 > or tomorrow. Check then if you can replicate it.

 >     Thanks,
 >     Vitalie

 >> Jake Burkhead <jake.burkhead at yougov.com>
 >> on Tue, 14 May 2013 17:36:12 +0000 wrote:

 >> Here is code that replicates the bug:
 >> survey.name = "foo"

 >> if (survey.name == "tt") {
 >> gryphonURL <- "fubar"
 >> } else {
 >> gryphonURL <- "lol"
 >> }

 >> -------------------------------------------------------
 >> This bug report will be sent to the ESS bugs email list
 >> Press C-c C-c when you are ready to send your message.
 >> -------------------------------------------------------

 >> [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=t, comint..sender=comint-simple-send
 >> (ess-mode-1): ess-language=S, ess-dialect=R buf=do_dining.R
 >> (ess-mode-1.5): alist=((ess-local-customize-alist quote R-customize-alist)
 >> (ess-dialect . R) (ess-suffix . R) (ess-build-tags-command . rtags('%s',
 >> recursive = TRUE, pattern = '\\.[RrSs](rw)?$',ofile = '%s'))
 >> (ess-dump-filename-template ess-replace-regexp-in-string S$ ess-suffix
 >> ess-dump-filename-template-proto) (ess-help-web-search-command quote ess-R-sos)
 >> (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-hel\
 >> p-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-smart-operators
 >> . ess-R-smart-operators) (inferior-ess-program . inferior-R-program-name)
 >> (inferior-ess-objects-command . inferior-R-objects-command)
 >> (inferior-ess-font-lock-keywords quote inferior-R-font-lock-keywords)
 >> (inferior-ess-search-list-command . search()
 >> ) (inferior-ess-help-command . inferior-ess-r-help-command)
 >> (inferior-ess-help-filetype) (inferior-ess-exit-command . q())
 >> (inferior-ess-exit-prompt . Save workspace image? [y/n/c]: )
 >> (inferior-ess-start-file) (inferior-ess-start-args . ) (ess-error-regexp-alist
 >> . ess-R-error-regexp-alist) (ess-describe-object-at-point-commands quote
 >> ess-R-describe-object-at-point-commands) (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 . t) (comint-process-echoes . t)
 >> (inferior-ess-primary-prompt . > ) (inferior-ess-secondary-prompt . + )
 >> (comment-start . #) (ess-imenu-generic-expression
 >> . ess-imenu-S-generic-expression) (comment-add . 1) (comment-start-skip . #+ *)
 >> (comment-use-syntax) (comment-column . 40) (ess-no-skip-regexp concat ^ *@\|
 >> (default-value (quote ess-no-skip-regexp))) (inferior-ess-prompt
 >> . inferior-S-prompt) (ess-get-help-topics-function quote
 >> ess-get-S-help-topics-function) (ess-getwd-command . getwd()
 >> ) (ess-setwd-command . setwd('%s')
 >> ) (ess-funargs-command . .ess.funargs(%s)
 >> ))
 >> (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) (indent-line-function quote ess-indent-line)
 >> (parse-sexp-ignore-comments . t) (ess-style . ess-default-style)
 >> (ess-mode-syntax-table . S-syntax-table) (add-log-current-defun-header-regexp
 >> . ^\(.+\)\s-+<-[
 >> ]*function) (ess-font-lock-keywords quote ess-R-font-lock-keywords)
 >> ] (ess-font-lock-defaults ess--extract-default-fl-keywords
 >> ] ess-R-font-lock-keywords) (font-lock-defaults quote (ess-font-lock-defaults
 >> ] nil nil ((46 . w) (95 . w)))))
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=comint-simple-send

 >> Finished setting up ESS-mode.

 >> (R): ess-dialect=R, buf=do_dining.R, start-arg=nil
 >> current-prefix-arg=nil
 >> (inferior-ess 0): ess-start-args=--no-readline
 >> (inf-ess 1): lang=S, dialect=R, tmp-dialect=R, buf=do_dining.R
 >> (inf-ess 1.1): procname=R temp-dialect=R, buf-name=*R*
 >> (inferior-ess) Method #3 start=/home/jake.burkhead/yougov/ygdp/dining/ buf=*R*
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, 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  , inf-ess-start-args=--no-readline
 >> (inf-ess finish [S(R), R(nil)]
 >> (ess-multi 0):  inf-ess-start-args=--no-readline  , comint-..echoes=t
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=inferior-ess-input-sender
 >> (i-ess 1): buf=*R*, lang=S, comint..echo=t, comint..sender=inferior-ess-input-sender,
 >> (i-ess end): buf=*R*, lang=S, comint..echo=t, comint..sender=inferior-ess-input-sender,
 >> (ess-multi post inf-ess: start-args=--no-readline  , comint-echoes=t
 >> (ess-multi 1):  start-args=--no-readline
 >> Making Process...Buf *R*, :Proc R, :Prog R
 >> :Args= --no-readline
 >> Start File=nil
 >> (ess-multi 2): waiting for process to start (before hook)
 >> (ess-multi 3): waiting for process after hook(R): inferior-ess-language-start=options(STERM='iESS', str.dendrogram.last="'", editor='emacsclient', show.error.locations=TRUE)
 >> (R): version (3.0.0)
 >> ess-request-a-process: {beginning}
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=comint-simple-send
 >> (ess-mode-1): ess-language=S, ess-dialect=R buf=updateStack.R
 >> (ess-mode-1.5): alist=((ess-local-customize-alist quote R-customize-alist)
 >> (ess-dialect . R) (ess-suffix . R) (ess-build-tags-command . rtags('%s',
 >> recursive = TRUE, pattern = '\\.[RrSs](rw)?$',ofile = '%s'))
 >> (ess-dump-filename-template ess-replace-regexp-in-string S$ ess-suffix
 >> ess-dump-filename-template-proto) (ess-help-web-search-command quote ess-R-sos)
 >> (ess-mode-syntax-tab\
 >> le . 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-smart-operators . ess-R-smart-operators)
 >> (inferior-ess-program . inferior-R-program-name) (inferior-ess-objects-command
 >> . inferior-R-objects-command) (inferior-ess-font-lock-keywords quote
 >> inferior-R-font-lock-keywords) (inferior-ess-search-list-command . search()
 >> ) (inferior-ess-help-command . inferior-ess-r-help-command)
 >> (inferior-ess-help-filetype) (inferior-ess-exit-command . q())
 >> (inferior-ess-exit-prompt . Save workspace image? [y/n/c]: )
 >> (inferior-ess-start-file) (inferior-ess-start-args . ) (ess-error-regexp-alist
 >> . ess-R-error-regexp-alist) (ess-describe-object-at-point-commands quote
 >> ess-R-describe-object-at-point-commands) (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 . t) (comint-process-echoes . t)
 >> (inferior-ess-primary-prompt . > ) (inferior-ess-secondary-prompt . + )
 >> (comment-start . #) (ess-imenu-generic-expression
 >> . ess-imenu-S-generic-expression) (comment-add . 1) (comment-start-skip . #+ *)
 >> (comment-use-syntax) (comment-column . 40) (ess-no-skip-regexp concat ^ *@\|
 >> (default-value (quote ess-no-skip-regexp))) (inferior-ess-prompt
 >> . inferior-S-prompt) (ess-get-help-topics-function quote
 >> ess-get-S-help-topics-function) (ess-getwd-command . getwd()
 >> ) (ess-setwd-command . setwd('%s')
 >> ) (ess-funargs-command . .ess.funargs(%s)
 >> ))
 >> (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) (indent-line-function quote ess-indent-line)
 >> (parse-sexp-ignore-comments . t) (ess-style . ess-default-style)
 >> (ess-mode-syntax-table . S-syntax-table) (add-log-current-defun-header-regexp
 >> . ^\(.+\)\s-+<-[
 >> ]*function) (ess-font-lock-keywords quote ess-R-font-lock-keywords) (ess-font-lock-defaults ess--extract-default-fl-keywords ess-R-font-lock-keywords) (font-lock-defaults quote (ess-font-loc\
 >> k-defaults nil nil ((46 . w) (95 . w)))))
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=comint-simple-send

 >> Finished setting up ESS-mode.
 >> ess-request-a-process: {beginning}
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=comint-simple-send
 >> (ess-mode-1): ess-language=S, ess-dialect=R buf=getGryphonData.R
 >> (ess-mode-1.5): alist=((ess-local-customize-alist quote R-customize-alist)
 >> (ess-dialect . R) (ess-suffix . R) (ess-build-tags-command . rtags('%s',
 >> recursive = TRUE, pattern = '\\.[RrSs](rw)?$',ofile = '%s'))
 >> (ess-dump-filename-template ess-replace-regexp-in-string S$ ess-suffix
 >> ess-dump-filename-template-proto) (ess-help-web-search-command quote ess-R-sos)
 >> (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-smart-operators . ess-R-smart-operators) (inferior-ess-program
 >> . inferior-R-program-name) (inferior-ess-objects-command
 >> . inferior-R-objects-command) (inferior-ess-font-lock-keywords quote
 >> inferior-R-font-lock-keywords) (inferio!
 >> r-ess-search-list-command . search()
 >> ) (inferior-ess-help-command . inferior-ess-r-help-command)
 >> (inferior-ess-help-filetype) (inferior-ess-exit-command . q())
 >> (inferior-ess-exit-prompt . Save workspace image? [y/n/c]: )
 >> (inferior-ess-start-file) (inferior-ess-start-args . ) (ess-error-regexp-alist
 >> . ess-R-error-regexp-alist) (ess-describe-object-at-point-commands quote
 >> ess-R-describe-object-at-point-commands) (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 . t) (comint-process-echoes . t)
 >> (inferior-ess-primary-prompt . > ) (inferior-ess-secondary-prompt . + )
 >> (comment-start . #) (ess-imenu-generic-expression
 >> . ess-imenu-S-generic-expression) (comment-add . 1) (comment-start-skip . #+ *)
 >> (comment-use-syntax) (comment-column . 40) (ess-no-skip-regexp concat ^ *@\|
 >> (default-value (quote ess-no-skip-regexp))) (inferior-ess-prompt
 >> . inferior-S-prompt) (ess-get-help-topics-function quote
 >> ess-get-S-help-topics-function) (ess-getwd-command . getwd()
 >> ) (ess-setwd-command . setwd('%s')
 >> ) (ess-funargs-command . .ess.funargs(%s)
 >> ))
 >> (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) (indent-line-function quote ess-indent-line) (parse-sexp-ignore-comments . t) (ess-style . ess-default-style) (ess-mode-syntax-table . S-syntax-table) (add-log-current-defun-header-regexp\
 >> . ^\(.+\)\s-+<-[
 >> ]*function) (ess-font-lock-keywords quote ess-R-font-lock-keywords) (ess-font-lock-defaults ess--extract-default-fl-keywords ess-R-font-lock-keywords) (font-lock-defaults quote (ess-font-loc\
 >> k-defaults nil nil ((46 . w) (95 . w)))))
 >> (ess-setq-vars-LOCAL): language=S, dialect=R, buf=nil, comint..echoes=t, comint..sender=comint-simple-send

 >> Finished setting up ESS-mode.
 >> ess-request-a-process: {beginning}

 >> Emacs  : GNU Emacs 23.3.1 (x86_64-pc-linux-gnu)
 >> of 2012-09-21 on batsu, modified by Debian
 >> Package: ess-mode 12.09-2 [<unknown>]
 >> 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-use-ido t
 >> ess-use-eldoc t
 >> ess-use-tracebug nil
 >> ess-use-auto-complete t
 >> ess-eval-visibly-p t
 >> ess-can-eval-in-background nil
 >> ess-local-process-name "R"
 >> )

 >> Jake Burkhead
 >> Analyst
 >> YouGov
 >> What the world thinks

 >> 111 W. 24th Street
 >> New York, NY 10011
 >> T: +1-646-537-9827
 >> jake.burkhead at yougov.com
 >> http://www.yougov.com

 >> _______________________________________________
 >> ESS-bugs ESS-bugs at r-project.org
 >> https://stat.ethz.ch/mailman/listinfo/ess-bugs

 >> _______________________________________________
 >> ESS-core list: https://stat.ethz.ch/mailman/listinfo/ess-core

 > _______________________________________________
 > ESS-bugs ESS-bugs at r-project.org
 > https://stat.ethz.ch/mailman/listinfo/ess-bugs

 > _______________________________________________
 > ESS-core list: https://stat.ethz.ch/mailman/listinfo/ess-core



More information about the ESS-bugs mailing list