[ESS] .emacs file seems not fully operative since upgrade from 22.3 to 24.3

Sparapani, Rodney rsparapa at mcw.edu
Sat Feb 18 16:56:52 CET 2012

Hi Vitalie:

Well, if you read...

You will see that default.el is favored over site-start.el ...

Your site may also have a site startup file; this is named site-start.el, if it exists. Like default.el, Emacs finds this file via the standard search path for Lisp libraries. Emacs loads this library before it loads your init file. We recommend against using site-start.el for changes that some users may not like. It is better to put them in default.el, so that users can more easily override them.

Also, it is my experience, that GNU Emacs installations are more likely to have default.el rather that
site-start.el (and, FWIW, XEmacs is the reverse; I had never heard of default.el).  Also, I think we
should gave Vincent a break here.  He just changed it due to feedback from Stephen and
I; and now you want him to change it back.  Let's cut him some slack please :o)


From: Vitalie Spinu [spinuvit at gmail.com]
Sent: Saturday, February 18, 2012 3:57 AM
To: Sparapani, Rodney
Cc: Christopher W Ryan; ess-help at stat.math.ethz.ch
Subject: Re: .emacs file seems not fully operative since upgrade from 22.3 to 24.3

>>>> Rodney Sparapani <rsparapa at mcw.edu>
>>>> on Fri, 17 Feb 2012 15:16:40 -0600 wrote:

  > Vitalie Spinu wrote:
  >> I am probably missing something obvious here, but how does it behave better
  >> if it overrides user's settings behind his back?

  > For many ESS variables, you need the setq before the require.  That way
  > the setq's in their init files will be honored.  For example,
  > (setq ess-sas-global-unix-keys t) needs to be before (require 'ess-site)
  > so the functions that rely on the setting of this variable get to see
  > the user's preference rather than the default specified by the defvar
  > which is nil (GECS does not allow function keys to be set globally by
  > default).

  > Rodney

Ok, I see the point now. It's harmless as long as there are no resets
with (setq ..), i.e. everything is done with (defvar ...).

In the case of Vincent's default.el it's the setqs which are overriding
the user's settings. It might be a good idea that all these setqs,
unrelated to ESS, be moved back to .site-start.el which is executed
before the users init file.


More information about the ESS-help mailing list