1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2025-12-06 22:41:06 -08:00

More updates to support el-get

This commit is contained in:
John Wiegley 2012-06-22 05:02:38 -05:00
parent ece5f93919
commit 28c6509148

View file

@ -271,6 +271,11 @@
:type 'boolean :type 'boolean
:group 'use-package) :group 'use-package)
(defcustom use-package-debug nil
"Whether to report more information, mostly regarding el-get"
:type 'boolean
:group 'use-package)
(defmacro with-elapsed-timer (text &rest forms) (defmacro with-elapsed-timer (text &rest forms)
`(let ((now ,(if use-package-verbose `(let ((now ,(if use-package-verbose
'(current-time)))) '(current-time))))
@ -330,8 +335,8 @@
`(not (member nil (mapcar #'featurep `(not (member nil (mapcar #'featurep
(quote ,requires)))) (quote ,requires))))
`(featurep (quote ,requires))))) `(featurep (quote ,requires)))))
(name-string (if (stringp name) name (name-string (if (stringp name) name (symbol-name name)))
(symbol-name name)))) (name-symbol (if (stringp name) (intern name) name)))
(unless (plist-get args :disabled) (unless (plist-get args :disabled)
(if diminish-var (if diminish-var
@ -395,13 +400,14 @@
`(require ',name nil t))) `(require ',name nil t)))
,(when (boundp 'el-get-sources) ,(when (boundp 'el-get-sources)
(unless (plist-get args :name) (require 'el-get)
(nconc args (list :name name-string)))
(unless (plist-get args :type) (let ((recipe (ignore-errors
(setq args (use-package-discover-el-get-type args))) (el-get-read-recipe name-symbol))))
(if (null recipe)
(when (plist-get args :type) (if use-package-debug
(message "No el-get recipe found for package `%s'"
name-symbol))
(setq args (setq args
(mapcar #'(lambda (arg) (mapcar #'(lambda (arg)
(cond (cond
@ -415,7 +421,20 @@
(nconc args (list :symbol (intern name-string))) (nconc args (list :symbol (intern name-string)))
`(push (quote ,args) el-get-sources))) (let ((elem args))
(while elem
(unless (plist-get recipe (car elem))
(plist-put recipe (car elem) (cadr elem)))
(setq elem (cddr elem))))
(unless (plist-get recipe :name)
(nconc recipe (list :name name-string)))
(unless (plist-get recipe :type)
(setq recipe (use-package-discover-el-get-type recipe)))
(ignore
(setq el-get-sources (cons recipe el-get-sources))))))
,(if (or commands (plist-get args :defer)) ,(if (or commands (plist-get args :defer))
(let (form) (let (form)