:defines Define vars to silence byte-compiler.
:load-path Add to `load-path' before loading.
:diminish Support for diminish package (if it's installed).
-:idle adds a form to run on an idle timer"
+:idle adds a form to run on an idle timer
+:ensure loads package using package.el if necessary."
+ (use-package-validate-keywords args) ; error if any bad keyword, ignore result
(let* ((commands (plist-get args :commands))
(pre-init-body (plist-get args :pre-init))
+ (pre-load-body (plist-get args :pre-load))
(init-body (plist-get args :init))
(config-body (plist-get args :config))
- (diminish-var (plist-get args :diminish))
- (defines (plist-get args :defines))
+ (diminish-var (plist-get-value args :diminish))
+ (defines (plist-get-value args :defines))
(idle-body (plist-get args :idle))
- (keybindings )
- (mode-alist )
- (interpreter-alist )
+ (keybindings-alist (plist-get-value args :bind))
+ (mode-alist (plist-get-value args :mode))
+ (interpreter-alist (plist-get-value args :interpreter))
(predicate (plist-get args :if))
- (pkg-load-path (plist-get args :load-path))
+ (pkg-load-path (plist-get-value args :load-path))
(defines-eval (if (null defines)
nil
(if (listp defines)
#'(lambda (interpreter)
`(add-to-list 'interpreter-mode-alist
(quote ,interpreter)))
- (plist-get args :interpreter)))
+ interpreter-alist))
`(progn
+ ,pre-load-body
,@(mapcar
#'(lambda (path)
`(add-to-list 'load-path