;;; loadhist.el --- lisp functions for working with feature groups
-;; Copyright (C) 1995, 1998, 2000, 2002, 2003, 2004,
-;; 2005, 2006 Free Software Foundation, Inc.
+;; Copyright (C) 1995, 1998, 2000, 2001, 2002, 2003, 2004,
+;; 2005, 2006, 2007 Free Software Foundation, Inc.
;; Author: Eric S. Raymond <esr@snark.thyrsus.com>
;; Maintainer: FSF
(mapcar (lambda (feature)
(list (symbol-name feature)))
features)
- nil t)))
+ ;; Complete only features loaded from a file
+ #'(lambda (f) (feature-file (intern (car f))))
+ t)))
(defvaralias 'loadhist-hook-functions 'unload-feature-special-hooks)
(defvar unload-feature-special-hooks
;; Remove any feature names that this file provided.
(provide
(setq features (delq (cdr x) features)))
- (defun
+ ((defun autoload)
(let ((fun (cdr x)))
(when (fboundp fun)
(when (fboundp 'ad-unadvise)
(if aload
(fset fun (cons 'autoload aload))
(fmakunbound fun))))))
- ((t require) nil)
+ ((t require defface) nil)
(t (message "Unexpected element %s in load-history" x)))
;; Kill local values as much as possible.
(dolist (buf (buffer-list))
(unless (local-variable-if-set-p x)
(makunbound x))))
;; Delete the load-history element for this file.
- (setq load-history (delq (assoc file load-history) load-history))))
+ (setq load-history (delq (assoc file load-history) load-history)))
+ ;; Don't return load-history, it is not useful.
+ nil)
(provide 'loadhist)