]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge pull request from phillord/first-keyword
authorJohn Wiegley <johnw@newartisans.com>
Mon, 7 Oct 2013 21:28:30 +0000 (14:28 -0700)
committerJohn Wiegley <johnw@newartisans.com>
Mon, 7 Oct 2013 21:28:30 +0000 (14:28 -0700)
Add a ":first" keyword for those occasions that it's necessary.
GitHub-reference: https://github.com/jwiegley/use-package/issues/42

1  2 
lisp/use-package/use-package.el

index f20987a51f2e9491479e4216816d37ba941a10f5,1ff776ccdf74bb66ec7b99fed65bb6a01f0b5bf3..74ed4c36dab796b2b689b14670e2b8d3f2cf03b9
@@@ -464,21 -420,20 +473,22 @@@ For full documentation. please see comm
  :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