0

Emacs noob here. I'm trying to customize my org-levels like so:

(let* ((variable-tuple
        (cond ((x-list-fonts   "ETBembo")         '(:font   "ETBembo"))
              ((x-list-fonts   "Source Sans Pro") '(:font   "Source Sans Pro"))
              ((x-list-fonts   "Lucida Grande")   '(:font   "Lucida Grande"))
              ((x-list-fonts   "Verdana")         '(:font   "Verdana"))
              ((x-family-fonts "Sans Serif")      '(:family "Sans Serif"))
              (nil (warn "Cannot find a Sans Serif Font."))))
       (base-font-color (face-foreground 'default nil 'default))
       (headline `(:inherit default :weight bold
                :foreground ,base-font-color
                )))

(custom-theme-set-faces 'user (org-level-8 ((t (,@headline ,@variable-tuple))))(org-level-7 ((t (,@headline ,@variable-tuple)))) (org-level-6 ((t (,@headline ,@variable-tuple))))(org-level-5 ((t (,@headline ,@variable-tuple)))) (org-level-4 ((t (,@headline ,@variable-tuple :height 1.1 :foreground "#e8d9c3"))))(org-level-3 ((t (,@headline ,@variable-tuple :height 1.1 :foreground "#e8d9c3")))) (org-level-2 ((t (,@headline ,@variable-tuple :height 1.1 :box nil :background nil :foreground "#e8d9c3"))))(org-level-1 ((t (,@headline ,@variable-tuple :height 1.1 :box nil
:background nil :foreground "#e8d9c3")))) (org-headline-done ((t (,@headline ,@variable-tuple :strike-through t))))(org-document-title ((t (,@headline ,@variable-tuple :height 2.0 :underline nil)))) (variable-pitch ((t (:family "ETBembo" :height 180 :weight thin))))(org-indent ((t (:inherit (org-hide fixed-pitch))))) ) (enable-them 'user) )

However, I cannot get the changes to apply. So I applied this recommendation but I discovered that the desired customizations only applied when I had a typo on the function enable-theme. In my case, I misspelled it to enable-them. Can you explain why this is occurring and how to get these customizations to apply to org-mode?

(Using Emacs 28.2 on MacOS)

Drew
  • 77,472
  • 10
  • 114
  • 243
mlee
  • 3
  • 2
  • You are almost certainly doing something wrong, but it's hard to tell what. If you put the above in a file, say /tmp/foo.el and start Emacs with emacs -q -l /tmp/foo.el, do you get anything? I get Symbol’s function definition is void: enable-them in the echo area. – NickD Jun 02 '23 at 17:21
  • @NickD In the process of following your recommendation I noticed another custom-set-faces further down in my init.el file. I believe this second one was causing a conflict because after commenting out that section my desired customizations are working properly. Thanks for your indirect assistance. I need to tidy up my unwieldy init file. – mlee Jun 02 '23 at 17:56
  • I would highly recommend that you test without your init file to begin with: start with emacs -q -l /path/to/minimal/init.el and make your minimal init be just enough to test the things you are adding. That should be followed up by a step of integration testing where you bring your new code into your actual init file. But cleaning up that file is a very good idea indeed. – NickD Jun 02 '23 at 17:59

0 Answers0