0

I am trying to modify a few faces for a specific doom-theme in Doom Emacs.

I am only interested in an emacs-lisp solution, I do not want to customize via the dedicated Emacs interface.

I got the basis for my approach from this thread. I managed to get it working as intended for org-tag face, but org-level-n attempts have no effect whatsoever.

Usually in Doom Emacs, it is a matter of loading sequence when customization has no effect and the solution comes from identifying the correct hook/mode/package after which executing your code.

But what gets me stuck is that both faces I am trying to change are defined in the same module (org-faces.el if I remember correctly). So I am out of ideas as how to investigate further.

This is what I am using in my config.el:

(defun customize-doom-dark+ ()
"Customize doom-dark+ theme"
(if (member 'doom-dark+ custom-enabled-themes)
    (custom-theme-set-faces
     'doom-dark+
     ;; Attempt using complete property setting 
     '(org-level-3 ((t (:foreground "#66b4e3"
                        :weight bold))))
     ;; The ':inherit' approach I would rather use
     '(org-level-4 ((t (:inherit outline-5))))
     '(org-level-5 ((t (:inherit outline-6))))
     '(org-level-6 ((t (:inherit outline-7))))
     '(org-level-7 ((t (:inherit outline-1
                        :weight normal))))
     '(org-level-8 ((t (:inherit outline-2
                        :weight normal))))
     ;; I also tried setting 'org-tag' with ':inherit org-footnote'
     ;; It works as intended
     '(org-tag ((t (:foreground "#D9DAA2"
                    :weight normal))))
     )))
(add-hook 'doom-load-theme-hook 'customize-doom-dark+)

1

1 Answer 1

0

I finally found the solution on doom emacs discourse, I was going for an overly complicated approach, but I still cannot find the solution in the documentation, so this might be useful to someone until the doc gets updated.

(custom-theme-set-faces! 'doom-dark+
  '(org-level-3 :inherit outline-4)
  '(org-level-4 :inherit outline-5)
  '(org-level-5 :inherit outline-6)
  '(org-level-6 :inherit outline-7)
  '(org-level-7 :inherit outline-1 :weight normal)
  '(org-level-8 :inherit outline-2 :weight normal)
  '(org-tag :foreground "#D9DAA2" :weight normal))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.