[OS X Emacs] Overriding emacs-rails included with Aquamacs

Chap Lovejoy chaplovejoy at gmail.com
Wed Nov 12 11:29:02 EST 2008

Thanks for the quick replies Avdi and David.

> Avdi has given you the answer.  You could also directly load the package
> (with "load" for instance), rather than just saying (require 'rails) (or
> whatever it is).

I've moved the package to a different directory and added it as
suggested and everything is working properly now.

> The question here is what the right thing to do would be for Aquamacs.  If
> we add a preference to load user-provided functions, we will almost
> certainly create situations of incompatibility, where Aquamacs comes with a
> modified version of some package, or needs a certain version number.  Emacs
> does not provide a systematic versioning API so that you can't require a
> certain package version.  Other packages, such as "htmlize" have been
> extended in Aquamacs; if you load a brand-new version of "htmlize" instead
> of the Aquamacs one, then you will break printing.  (Rails is okay to update
> externally.)

I understand the complications involved with allowing user packages to
load before supplied packages. I may have missed this in the
documentation, but my confusion stemmed from the fact that I was
relying on local customizations overriding the defaults (which is a
general pattern I've come to expect).

Perhaps a solution would be to define a user directory for packages
that appears in the load-path before those in the Aquamacs bundle with
the caveat that you may break functionality if you are not careful
about what you override.

Anyway, this is just a suggestion and is easy enough to implement in
Preferences.el that it's really a non-issue.

Thanks again for the quick answers!

More information about the MacOSX-Emacs mailing list