[ESS] ESS[R] / Xemacs dies if I hit return before parenthesis matching is completed
Dan Davison
davison at uchicago.edu
Thu Feb 24 19:12:50 CET 2005
On Thu, 24 Feb 2005, Stephen Eglen wrote:
>
> > I just apt-get upgrade'd my debian linux "sarge" system, and one
> > consequence has been that ESS / R / Xemacs are not behaving as nicely as
> > they were before the upgrade: If I hit return to evaluate an R expression,
> > and do so immediately after closing a parenthesis or two, without waiting
> > for the parenthesis highlighter to "bounce" back from the matching
> > parenthesis, then the session dies
>
> Hi Dan, by the look of the backtraces, this could be a problem with
> packages other than just ESS.
>
> Can you try the same in a shell?
>
> M-x shell
>
> then type a silly command like
> (pwd)
>
> and hit return before the bounce finishes.
I couldn't get it to seize up in the M-x shell session, or using emacs
a.o.t. XEmacs.
It seems to happen in XEmacs ESS[R] when the R interpreter is sent a
relatively complex line. e.g. it didn't seize up once with
print(((((5))))),
but it often seized up with
for(i in 1:5) print(((((5)))))
emacs seemed OK with both of these though.
>
> Do you have anything special in your .emacs to do the paren bouncing?
I don't think so:
dan at Psilocybe:~$ cat .emacs.d/.emacs
(defun Rnw-mode ()
(require 'ess-noweb)
(noweb-mode)
(if (fboundp 'R-mode)
(setq noweb-default-code-mode 'R-mode)))
(add-to-list 'auto-mode-alist '("\\.Rnw\\'" . Rnw-mode))
(add-to-list 'auto-mode-alist '("\\.Snw\\'" . Rnw-mode))
(setq reftex-file-extensions
'(("Snw" "Rnw" "rnw" "nw" "tex" ".tex" ".ltx") ("bib" ".bib")))
(setq TeX-file-extensions
'("Snw" "Rnw" "rnw" "nw" "tex" "sty" "cls" "ltx" "texi" "texinfo"))
dan at Psilocybe:~$ cat .xemacs/custom.el
(custom-set-variables
'(gnuserv-program (concat exec-directory "/gnuserv") t)
'(c-default-style "bsd")
'(line-number-mode t)
'(c-basic-offset 4)
'(user-mail-address "davison at uchicago.edu")
'(query-user-mail-address nil))
(custom-set-faces)
>
> >
> > string-match("\\(?:[^ \n
> > \"'`]+\\|\"[^\"]*\"\\|'[^']*'\\|`[^`]*`\\)+" "apply(A, 1, function(row)
> > prod(row))" 11)
> > # bind (arg-regexp args pos count mth nth string)
> > comint-arguments("apply(A, 1, function(row) prod(row))" 0 nil)
> > # bind (input intxt append-here pmark-val pmark proc)
> > comint-send-input()
> > #<compiled-function nil "...(14)" [ess-object-list
> > ess-make-buffer-current run-hooks ess-send-input-hook comint-send-input
> > nil] 2 ("/usr/share/xemacs21/site-lisp/ess/ess-inf.elc" . 30639) nil>()
> > call-interactively(inferior-ess-send-input)
> > # (condition-case ... . error)
> > # (catch top-level ...)
>
> Also, can you try using Emacs rather than XEmacs?
>
> Stephen
>
More information about the ESS-help
mailing list