Agustin Martin <agmar...@debian.org> writes: > > Hi, David, > > XEmacs is in Debian and is currently supported. While I am aware of its > current popularity and of the big difference between the number of > contributors for both, it should remain supported as long as we ship it.
Well, that's a topic for another thread, I think. > >> > I could just avoid symlink setting for unversioned Emacs, but there is >> > an aditional problem with it. For byte-compiled files to be available >> > I'll need to add that path to the search list, which will have as a >> > side effect that ispell.el and flyspell.el will be used by Emacs >> > instead of those provided by the package. No problem for XEmacs. >> >> Are you worried here about emacs loading the source files instead of the >> byte-compiled ones? By default emacs loads the .elc even if the .el is >> newer (see the variable load-prefer-newer). It's also usually not that >> big a deal to skip byte compilation (the exception being some uses of >> macros). You could try just putting the .el files in the load path and >> see how that goes. I just tried ispell-buffer uncompiled, and it seems >> fine. > > This is true when both files are in the same dir and so, in the same > location in the search path, but not otherwise > > $ emacs25 && enable spellchecking && eval (message "%s" ispell-version) > ispell.el 3.6 - 7-Jan-2003 > > However, this is not true when they are at different dirs in the load-path. > First dir with a match will win OK, that part is true. [stuff snipped] > > $ cp /usr/share/emacs/site-lisp/dictionaries-common/{i,fly}spell.el > /usr/share/emacs/25.2/site-lisp/dictionaries-common > $ emacs25 && enable spellchecking && eval (message "%s" ispell-version) > ispell.el 3.6 - 7-Jan-2003 (+ Debian `dictionaries-common' changes) I'm not sure if this is meant to demonstrate a distinct issue from what you say above about first match winning. In any case, I can report what worked to fix the emacsen-install of emacs-goodies-el: just guard the symlinking (rather than the whole file) with a check for the flavour emacs: -if [ ${FLAVOR} = emacs ]; then exit 0; fi - LOG=`tempfile -pelc_ -s.log -m644` ELDIR=/usr/share/emacs/site-lisp/${PACKAGE} ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE} @@ -67,9 +65,11 @@ FILES=$(for i in $FILES ; do echo $i ; done | sort -u) # Symlinks instead of copying... cd ${ELCDIR} -for i in $FILES $sourceonly_all; do - ln -fs /usr/share/emacs/site-lisp/${PACKAGE}/$i -done +if [ ${FLAVOR} != emacs ]; then + for i in $FILES $sourceonly_all; do + ln -fs /usr/share/emacs/site-lisp/${PACKAGE}/$i + done +fi # Prepare the flavour specific autoload file if [ ${PACKAGE} = emacs-goodies-el ]; then