Package: ess
Version: 5.3.0-1
Severity: normal
Tags: patch

Hi,

The file /etc/emacs/site-start.d/50ess.el contains:

 (require 'ess-site)

This will still be executed at Emacs startup when the ess package is
removed but not purged, because the /etc file will still exist.  This
will cause an annoying error on Emacs startup and has been known to make
installation of other elisp packages fail during  byte-compilation.

I have included a new startup file for you.  I have been using similar
startup files for emacs-goodies-el, debian-el, dpkg-dev-el, gri-el,
mh-e, etc.

As a bonus, the enclosed file uses `debian-pkg-add-load-path-item'
instead of manually adding to load-path.

Thanks,
Peter
;; -*-emacs-lisp-*-
;;
;; Emacs startup file for the Debian GNU/Linux ess package
;;
;; Originally contributed by Nils Naumann <[EMAIL PROTECTED]>
;; Modified by Dirk Eddelbuettel <[EMAIL PROTECTED]>
;; Adapted for dh-make by Jim Van Zandt <[EMAIL PROTECTED]>
;; Modified by Peter S Galbraith <[EMAIL PROTECTED]> to skip loading when
;;  not ess is fully installed, as this file still exists when the
;;  package is removed but not purged.

(cond
 ((not (file-exists-p "/usr/share/emacs/site-lisp/ess"))
  (message
   "Package ess removed but not purged.  Skipping setup."))
 ((not (file-exists-p (concat "/usr/share/"
                              (symbol-name debian-emacs-flavor)
                              "/site-lisp/ess/ess-site.elc")))
  (message "Package ess not fully installed.  Skipping setup."))
 (t 

  ;; The ess package follows the Debian/GNU Linux 'emacsen' policy and
  ;; byte-compiles its elisp files for each 'emacs flavor' (emacs19,
  ;; xemacs19, emacs20, xemacs20...).  The compiled code is then
  ;; installed in a subdirectory of the respective site-lisp directory.
  ;; We have to add this to the load-path:
  (debian-pkg-add-load-path-item
   (concat "/usr/share/"
           (symbol-name debian-emacs-flavor)
           "/site-lisp/ess"))

;(if (assoc "\\.[rR]\\'" auto-mode-alist) nil
;  (setq auto-mode-alist
;       (append
;        '(("\\.sp\\'"    . S-mode) ;; re: Don MacQueen <[EMAIL PROTECTED]>
;          ("\\.[qsS]\\'" . S-mode) ;; q,s,S [see ess-restore-asm-extns above!]
;          ("\\.ssc\\'"   . S-mode) ;; Splus 4.x script files.
;          ("\\.[rR]\\'"  . R-mode)
;          ("\\.[rR]nw\\'"  . Rnw-mode)
;          ("\\.[rR]profile\\'" . R-mode)
;          ("NAMESPACE\\'" . R-mode)
;          ("\\.omg\\'"         . omegahat-mode)
;          ("\\.hat\\'"         . omegahat-mode) ;; Duncan's pref'd...
;          ("\\.lsp\\'"         . XLS-mode)
;          ("\\.do\\'"          . STA-mode)
;          ("\\.ado\\'"         . STA-mode)
;          ("\\.sas\\'"         . SAS-mode)
;          ("\\.SAS\\'"         . SAS-mode)
;          ;;("\\.lst\\'"               . SAS-listing-mode);sasl
;          ;; Too many *.log files, not only SAS :
;          ;;("\\.log\\'"       . SAS-log-mode);sasl
;          ("\\.[Ss]t\\'"       . S-transcript-mode)
;          ("\\.[Ss]out"        . S-transcript-mode)
;          ("\\.[Rr]t\\'"       . R-transcript-mode)
;          ("\\.[Rr]out"        . R-transcript-mode)
;          ("\\.Rd\\'"          . Rd-mode)
;          ("\\.[Bb][Uu][Gg]\\'"         . ess-bugs-mode)
;          ("\\.[Bb][Oo][Gg]\\'"         . ess-bugs-mode)
;          ("\\.[Bb][Mm][Dd]\\'"         . ess-bugs-mode)
;          )
;        auto-mode-alist)))

;(dolist (l '(R XLS S Splus R-mode S-mode SAS-mode STA-mode
;              Rnw-mode omegahat-mode S-transcript-mode R-transcript-mode
;              Rd-mode ess-bugs-mode SAS-liting-mode SAS-log-mode))
;  (autoload l "ess-site" "" t))

  (require 'ess-site)))

Reply via email to