From: Phillip Lord Date: Thu, 17 Jan 2013 21:22:57 +0000 (+0000) Subject: Documentation for the use-package macro X-Git-Tag: emacs-29.0.90~1306^2~15^2~466^2~2 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=abc0ebc92d;p=emacs.git Documentation for the use-package macro --- diff --git a/lisp/use-package/use-package.el b/lisp/use-package/use-package.el index 3dce341e9da..43466d7c666 100644 --- a/lisp/use-package/use-package.el +++ b/lisp/use-package/use-package.el @@ -321,6 +321,28 @@ (defmacro use-package (name &rest args) +"Use a package with configuration options. + +For full documentation. please see commentary. + + (use-package package-name + :keyword option) + +:init Code to run when `use-package' form evals. +:bind Perform key bindings, and define autoload for bound + commands. +:commands Define autoloads for given commands. +:mode Form to be added to `auto-mode-alist'. +:interpreter Form to be added to `auto-interpreter-alist'. +:defer Defer loading of package -- automatic + if :commands, :bind, :mode or :interpreter are used. +:config Runs if and when package loads. +:if Conditional loading. +:disabled Ignore everything. +:defines Define vars to silence byte-compiler. +:load-path Add to `load-path' before loading. +:diminish Support for diminish package (if it's installed). +" (let* ((commands (plist-get args :commands)) (pre-init-body (plist-get args :pre-init)) (init-body (plist-get args :init)) @@ -350,8 +372,13 @@ (unless (plist-get args :disabled) ;; force this immediately -- one off cost! - (if (plist-get args :ensure) - (use-package-ensure-elpa name)) + (let* ((ensure (plist-get args :ensure)) + (package-name + (or (and (eq ensure t) + name) + ensure))) + (when package-name + (use-package-ensure-elpa package-name))) (if diminish-var (setq config-body