use-package-with-elapsed-timer: respect option at runtime

Previously the option `use-package-verbose' was consulted at macro
expansion time, and as a result customizing the option did nothing,
without also recompiling `use-package.el'.
This commit is contained in:
Jonas Bernoulli 2014-03-09 18:50:01 +01:00
parent 11195fa213
commit ea3a475d0b

View file

@ -58,19 +58,18 @@
:type 'number
:group 'use-package)
(defmacro use-package-with-elapsed-timer (text &rest forms)
(let ((body `(progn ,@forms)))
(if use-package-verbose
(defmacro use-package-with-elapsed-timer (text &rest body)
(let ((nowvar (make-symbol "now")))
`(let ((,nowvar (current-time)))
`(if use-package-verbose
(let ((,nowvar (current-time)))
(message "%s..." ,text)
(prog1 ,body
(prog1 (progn ,@body)
(let ((elapsed
(float-time (time-subtract (current-time) ,nowvar))))
(if (> elapsed ,use-package-minimum-reported-time)
(message "%s...done (%.3fs)" ,text elapsed)
(message "%s...done" ,text))))))
body)))
(message "%s...done" ,text)))))
,@body)))
(put 'use-package-with-elapsed-timer 'lisp-indent-function 1)