[ESS-bugs] ess-mode 5.3.3; bug in file-name-all-completions?
Steven McKinney
smckinney at bccrc.ca
Sat Oct 28 00:27:08 CEST 2006
Hi Richard,
> -----Original Message-----
> From: Richard M. Heiberger [mailto:rmh at temple.edu]
> Sent: Friday, October 27, 2006 1:22 PM
> To: Steven McKinney; ess-bugs at stat.math.ethz.ch
> Subject: Re: [ESS-bugs] ess-mode 5.3.3; bug in
file-name-all-completions?
>
> Hi and welcome.
>
> Your working fix
>
> Working fix:
> ------------
>
> I edited essd-sp6.el and replaced
> (defvar ess-s-versions '("Splus")
> with
> (defvar ess-s-versions nil
>
> I edited essd-r.el and replaced
> (defvar ess-r-versions '("R-1" "R-2" "R-devel" "R-
> patched")
> with
> (defvar ess-r-versions nil
>
> I can now start up Emacs and invoke R via
> M-x R
>
>
>
>
>
> can't be used as a general solution. Those names are there
> because they are used to construct M-x functions that will call
> any of the R or S versions that are on the machine. We then place
> the calls to those versions on the emacs menu. From within the
> myfile.s buffer, click "ESS/Start Process/Other/function.name".
>
Correct. Not a general solution. Just a working solution to get my
emacs and ESS operational. The general solution is to fix the function
file-name-all-completions or the chain of calls leading to the
invocation
of this function (info from Rodney Sparapani - see below).
> What problem are you trying to solve? If none of the referents for
those
> names are present, I would expect the result of running the code that
> generates functions to return with 0 functions generated.
>
The code attempts to open a directory for which it does not
have permission. (Rodney Sparapani replied and said the issue
is to perform a check for permissions before attempting to
traverse the directories involved, and will work on implementing
this.)
Debugger entered--Lisp error: (file-error "Opening directory"
"permission denied" "/opt/maven/bin")
file-name-all-completions("Splus" "/opt/maven/bin")
(setq ess-tmp-files (file-name-all-completions ess-root-arg
ess-tmp-dir))
(progn (setq ess-tmp-files (file-name-all-completions ess-root-arg
ess-tmp-dir)) (while ess-tmp-files (setq e ss-tmp-file ... ess-tmp-files
...) (if ... ..$
I am working in an odd situation - on a beefy compute node of a rocks
cluster. As a compute node, the machine is fairly stripped down,
and does not serve GUI enabled windows. Thus emacs invocation
yields a minimalist emacs frame circa last century. No mouse-selectable
menu items, no GUI menu bar. I was just trying to get emacs with ESS
support up and running.
> On your specific machine, if you need to set those values to nil, do
> it in site-start.el. Even wearing your site administrator hat, you
are
> a user from the ESS perspective. The only ess*.el file that a user
> is allowed to touch is ess-site.el. I don't understand why your
machine
> needs nil values. If you can describe the reason, then code it as a
> condition and then the condition could be added to the essd*.el files.
Thanks for the information. I removed my edits from
essd-r.el and essd-sp6.el.
I put the defvar statements into ess-site.el before the
require calls to essd-r and essd-sp6.
;; (1.5) Require the needed dialects for your setup.
(defvar ess-s-versions nil)
(defvar ess-r-versions nil)
This appears to be working fine.
Thanks again for the information.
Best regards
Steven McKinney
More information about the ESS-bugs
mailing list