diff --git a/core/autoload/themes.el b/core/autoload/themes.el index 19cc1d5ab..af59af132 100644 --- a/core/autoload/themes.el +++ b/core/autoload/themes.el @@ -3,8 +3,9 @@ (defun doom--custom-theme-set-face (spec) (cond ((listp (car spec)) (cl-loop for face in (car spec) - collect `(,face ,(cdr spec)))) - ((keywordp (car spec)) + collect + (doom--custom-theme-set-face `(,face ,(cdr spec))))) + ((keywordp (cadr spec)) `((,(car spec) ((t ,(cdr spec)))))) (`((,(car spec) ,(cdr spec)))))) @@ -22,18 +23,18 @@ all themes. It will apply to all themes once they are loaded. '(org-tag :background \"#4499FF\") '(org-ellipsis :inherit org-tag) '(which-key-docstring-face :inherit font-lock-comment-face))" - `(let* ((themes (doom-enlist (or theme 'user))) - (fn (gensym (format "doom--customize-%s-h-" (mapconcat #'symbol-name themes "-"))))) - (fset fn - (lambda () - (dolist (theme themes) - (when (or (eq theme 'user) - (custom-theme-enabled-p theme)) - (apply #'custom-theme-set-faces 'user - (mapcan #'doom--custom-theme-set-face - specs)))))) - (funcall fn) - (add-hook 'doom-load-theme-hook fn))) + (let* ((themes (doom-enlist (or theme 'user))) + (fn (gensym (format "doom--customize-%s-h-" (mapconcat #'symbol-name themes "-"))))) + (fset fn + (lambda () + (dolist (theme themes) + (when (or (eq theme 'user) + (custom-theme-enabled-p theme)) + (apply #'custom-theme-set-faces 'user + (mapcan #'doom--custom-theme-set-face + specs)))))) + (funcall fn) + (add-hook 'doom-load-theme-hook fn))) ;;;###autoload (defun custom-set-faces! (&rest specs)