diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 2ecae541fed..510c0b99702 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -149,7 +149,8 @@ (error nil)) (condition-case nil - (require 'cus-start) + (unless (featurep 'cus-start) + (require 'cus-start)) (error nil)) (put 'custom-define-hook 'custom-type 'hook) diff --git a/lisp/custom.el b/lisp/custom.el index a0dc1945bed..e5ceda87f61 100644 --- a/lisp/custom.el +++ b/lisp/custom.el @@ -699,7 +699,8 @@ The result is that the change is treated as having been made through Custom." (ignore-errors (require 'cus-load)) (ignore-errors - (require 'cus-start)) + (unless (featurep 'cus-start) + (require 'cus-start))) (dolist (load (get symbol 'custom-loads)) (cond ((symbolp load) (ignore-errors (require load))) ;; This is subsumed by the test below, but it's much faster. diff --git a/lisp/subr.el b/lisp/subr.el index 99981848db4..50ebc598e80 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -161,11 +161,12 @@ of previous VARs. `(progn . ,(nreverse exps)))) (defmacro setq-local (&rest pairs) - "Make each VARIABLE buffer-local and assign to it the corresponding VALUE. + "Make each VARIABLE local to current buffer and set it to corresponding VALUE. The arguments are variable/value pairs. For each VARIABLE in a pair, -make VARIABLE buffer-local and assign to it the corresponding VALUE -of the pair. The VARIABLEs are literal symbols and should not be quoted. +make VARIABLE buffer-local in the current buffer and assign to it the +corresponding VALUE of the pair. The VARIABLEs are literal symbols +and should not be quoted. The VALUE of the Nth pair is not computed until after the VARIABLE of the (N-1)th pair is set; thus, each VALUE can use the new VALUEs