Browse Source

update lazyload-eval

pull/1/head
10sr 11 years ago
parent
commit
585ed95be7
1 changed files with 15 additions and 11 deletions
  1. +15
    -11
      emacs.el

+ 15
- 11
emacs.el View File

@@ -78,17 +78,21 @@ FEATURE is a symbol. FUNCTIONS is a list of symbols.
FORM is passed to `eval-after-load'. FORM is passed to `eval-after-load'.
When this macro is evaluated, this returns the path to library if feature When this macro is evaluated, this returns the path to library if feature
found, otherwise returns nil." found, otherwise returns nil."
`(progn
,@(mapcar (lambda (f)
`(autoload (quote ,f)
,(symbol-name (eval feature))
""
t))
(eval functions))
(eval-after-load ,feature
'(progn
,@form))
(locate-library ,(symbol-name (eval feature)))))
(let* ((libname (symbol-name (eval feature)))
(libpath (locate-library libname)))
`(progn
,@(mapcar (lambda (f)
`(autoload (quote ,f)
,libname
,(concat "Autoloaded function defined in \""
libpath
"\".")
t))
(eval functions))
(eval-after-load ,feature
'(progn
,@form))
,libpath)))


;; (macroexpand '(f-autoload 'autosave '(a-f b-f) (message "1") (message "2"))) ;; (macroexpand '(f-autoload 'autosave '(a-f b-f) (message "1") (message "2")))
(when (lazyload-eval 'tetris (when (lazyload-eval 'tetris


Loading…
Cancel
Save