+2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
+
+ * subr.el (eval-after-load): Make it work with features as well.
+
+ * log-view.el (log-view-mode): Don't mark the buffer unmodified.
+
+ * international/mule-cmds.el (describe-input-method): Setup xref.
+ (set-language-environment): Use functionp.
+ (locale-language-names, locale-charset-language-names)
+ (locale-preferred-coding-systems): Defconst and purecopy.
+
+ * language/european.el (mac-roman): Add mime-charset property.
+
2001-11-15 Richard M. Stallman <rms@gnu.org>
- * emacs-lisp/cl.el (values, values-list, multiple-value-list)
+ * emacs-lisp/cl.el (values, values-list, multiple-value-list)
(multiple-value-apply, nth-value): Use defsubst rather than defalias
to get better doc strings.
It does nothing if FORM is already on the list for FILE.
FILE must match exactly. Normally FILE is the name of a library,
with no directory or extension specified, since that is how `load'
-is normally called."
- ;; Make sure `load-history' contains the files dumped with Emacs
- ;; for the case that FILE is one of the files dumped with Emacs.
- (load-symbol-file-load-history)
- ;; Make sure there is an element for FILE.
- (or (assoc file after-load-alist)
- (setq after-load-alist (cons (list file) after-load-alist)))
- ;; Add FORM to the element if it isn't there.
+is normally called.
+FILE can also be a feature (i.e. a symbol), in which case FORM is
+evaluated whenever that feature is `provide'd."
(let ((elt (assoc file after-load-alist)))
- (or (member form (cdr elt))
- (progn
- (nconc elt (list form))
- ;; If the file has been loaded already, run FORM right away.
- (and (assoc file load-history)
- (eval form)))))
+ ;; Make sure there is an element for FILE.
+ (unless elt (setq elt (list file)) (push elt after-load-alist))
+ ;; Add FORM to the element if it isn't there.
+ (unless (member form (cdr elt))
+ (nconc elt (list form))
+ ;; If the file has been loaded already, run FORM right away.
+ (if (if (symbolp file)
+ (featurep file)
+ ;; Make sure `load-history' contains the files dumped with
+ ;; Emacs for the case that FILE is one of them.
+ (load-symbol-file-load-history)
+ (assoc file load-history))
+ (eval form))))
form)
(defun eval-next-after-load (file)
(defun functionp (object)
"Non-nil iff OBJECT is a type of object that can be called as a function."
- (or (and (symbolp object)
- (fboundp object)
+ (or (and (symbolp object) (fboundp object)
(setq object (indirect-function object))
(eq (car-safe object) 'autoload)
- (not (car-safe (cdr-safe (cdr-safe (cdr-safe (cdr-safe object)))))))
+ (not (car-safe (cdr-safe (cdr-safe (cdr-safe (cdr object)))))))
(subrp object) (byte-code-function-p object)
(eq (car-safe object) 'lambda)))