]> git.eshelyaron.com Git - emacs.git/commitdiff
:no-require t should never require
authorJohn Wiegley <johnw@newartisans.com>
Fri, 1 Dec 2017 05:45:17 +0000 (21:45 -0800)
committerJohn Wiegley <johnw@newartisans.com>
Fri, 1 Dec 2017 05:45:25 +0000 (21:45 -0800)
lisp/use-package/use-package.el

index 7a7b4660ca06f298dcc40a621db9db07e4ffbf22..d55a4c0c437eed39f40f20d36ff01d7ee30568f5 100644 (file)
@@ -933,7 +933,8 @@ If ALLOW-EMPTY is non-nil, it's OK for ARGS to be an empty list."
 
 (defun use-package-handler/:no-require (name keyword arg rest state)
   ;; This keyword has no functional meaning.
-  (use-package-process-keywords name rest state))
+  (use-package-process-keywords name rest
+    (plist-put state :no-require t)))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;
@@ -1459,12 +1460,15 @@ representing symbols (that may need to be autloaded)."
           (format "Loading package %s" name)
         (if use-package-expand-minimally
             (use-package-concat
-             (list (use-package-load-name name))
+             (unless (plist-get state ':no-require)
+               (list (use-package-load-name name)))
              config-body)
-          `((if (not ,(use-package-load-name name t))
-                (ignore
-                 (message (format "Cannot load %s" ',name)))
-              ,@config-body)))))))
+          (if (plist-get state ':no-require)
+              config-body
+            `((if (not ,(use-package-load-name name t))
+                  (ignore
+                   (message (format "Cannot load %s" ',name)))
+                ,@config-body))))))))
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ;;