使用emacs-24.1,我们如何在emacs中扩展/自定义现有的颜色主题?我试过这个
(custom-theme-set-faces
'tango
'(ido-first-match ((t (:foreground "008800" :weight bold))))
当我加载探戈时它工作正常。但是当我把它放在.emacs.d / init.el文件中时,它失败了,因为当时没有加载探戈而且emacs抱怨未定义的探戈。这当然不会有帮助,因为我倾向于使用(load-theme ...)定期更改主题。我正在看的是加载主题时要运行的某种钩子。有可能吗?
当然,我可以修改tango-theme.el文件但这不是我的目标。我想扩展现有的主题。我在我的init文件中尝试过这个
(load-theme 'tango-dark)
(custom-theme-set-faces
'tango-dark
'(ido-first-match ((t (:foreground "#00cdef" :weight bold))))
(deftheme tango)
(custom-theme-set-faces
'tango
'(ido-first-match ((t (:foreground "#008800" :weight bold))))
这对于探戈主题来说效果很好..但是探戈黑暗显示与探戈相同的颜色。因此,如何在加载主题之前自定义现有主题,或者在加载主题时设置自定义主题。
答案 0 :(得分:2)
当我想定义一个新主题时,我会修改一个给定的主题,然后我调用(color-theme-print)。此函数将生成一个有助于恢复我修改的颜色主题的函数。将生成的函数包含在.emacs中。
color-theme-print用于生成新的颜色主题。
答案 1 :(得分:1)
您要查找的命令是eval-after-load
。