Refactor use-package extensions to ext file

This commit is contained in:
Henrik Lissner 2015-09-30 13:51:30 -04:00
parent 2b972df9d6
commit 0cc8de3e07

View file

@ -0,0 +1,27 @@
;;; defuns-use-package.el
;; Meant to be loaded explicitly by core.el
(defun use-package--add-keyword (keyword after)
(setq use-package-keywords
(-insert-at (-find-index (lambda (key) (eq key after)) use-package-keywords)
keyword use-package-keywords)))
(use-package--add-keyword :after :load-path)
(defalias 'use-package-normalize/:after 'use-package-normalize-symlist)
(defun use-package-handler/:after (name-symbol keyword arg rest state)
(let ((body (use-package-process-keywords name-symbol rest state)))
(if (null arg)
body
(use-package-concat
(use-package-process-keywords name-symbol
(use-package-sort-keywords (use-package-plist-maybe-put rest :defer t)) state)
(apply #'nconc
(mapcar (lambda (feature)
`((after! ,feature (require ',name-symbol))))
(delete-dups arg)))))))
(provide 'defuns-use-package)
;;; defuns-use-package.el ends here