emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/leaf c66dede 03/13: rewrite Fix `leaf-find'in embedded


From: Stefan Monnier
Subject: [elpa] externals/leaf c66dede 03/13: rewrite Fix `leaf-find'in embedded leaf block
Date: Wed, 23 Jun 2021 21:24:15 -0400 (EDT)

branch: externals/leaf
commit c66dede08ddb40c4de9bb74aebe75994a5447039
Author: Z572 <873216071@qq.com>
Commit: Z572 <873216071@qq.com>

    rewrite Fix `leaf-find'in embedded leaf block
---
 leaf.el | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/leaf.el b/leaf.el
index dee8315..5c9a62a 100644
--- a/leaf.el
+++ b/leaf.el
@@ -152,10 +152,10 @@ Same as `list' but this macro does not evaluate any 
arguments."
    :global-minor-mode (progn
                         (mapc (lambda (elm) (leaf-register-autoload (car elm) 
(cdr elm))) leaf--value)
                         `(,@(mapcar (lambda (elm) `(,(car elm) 1)) 
leaf--value) ,@leaf--body))
-
-   :leaf-defer        (if (and leaf--body (eval (car leaf--value)) 
(leaf-list-memq leaf-defer-keywords (leaf-plist-keys leaf--raw)))
-                          `((eval-after-load ',leaf--name '(let 
((leaf--load-file-name ,load-file-name)) ,@leaf--body))) `(,@leaf--body))
-
+   :leaf-defer        (let* ((eval-after-p (and leaf--body (eval (car 
leaf--value)) (leaf-list-memq leaf-defer-keywords (leaf-plist-keys leaf--raw))))
+                             (file (leaf-this-file))
+                             (let-or-progn (if file `(let 
((leaf--load-file-name ,file))) '(progn))))
+                        (if eval-after-p `((eval-after-load ',leaf--name 
'(,@let-or-progn ,@leaf--body))) `(,@leaf--body)))
    :setq              `(,@(mapcar (lambda (elm) `(setq ,(car elm) ,(cdr elm))) 
leaf--value) ,@leaf--body)
    :setq-default      `(,@(mapcar (lambda (elm) `(setq-default ,(car elm) 
,(cdr elm))) leaf--value) ,@leaf--body)
    :setf              `(,@(mapcar (lambda (elm) `(setf ,(car elm) ,(cdr elm))) 
leaf--value) ,@leaf--body)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]