From: John Wiegley Date: Thu, 22 Dec 2016 17:02:52 +0000 (-0800) Subject: Add new customization option `use-package-always-demand` X-Git-Tag: emacs-29.0.90~1306^2~15^2~282 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=ad8094c22d;p=emacs.git Add new customization option `use-package-always-demand` This is equivalent to adding `:demand t` to all `use-package` declarations, and has the same semantics as doing so (meaning it can be overridden locally using `:defer t` in a declaration). Fixes https://github.com/jwiegley/use-package/issues/423 --- diff --git a/lisp/use-package/use-package.el b/lisp/use-package/use-package.el index 29855044241..cfff54579bc 100644 --- a/lisp/use-package/use-package.el +++ b/lisp/use-package/use-package.el @@ -80,6 +80,11 @@ The check is performed by looking for the module using `locate-library'." :type 'boolean :group 'use-package) +(defcustom use-package-always-demand nil + "If non-nil, assume `:demand t` unless `:defer t` is given." + :type 'boolean + :group 'use-package) + (defcustom use-package-always-ensure nil "Treat every package as though it had specified `:ensure SEXP`." :type 'sexp @@ -1171,7 +1176,10 @@ this file. Usage: (let ((body (macroexp-progn - (use-package-process-keywords name args* + (use-package-process-keywords name + (if use-package-always-demand + (append args* '(:demand t)) + args*) (and use-package-always-defer (list :deferred t)))))) (if use-package-debug (display-buffer