4

我从这里使用 zenburn:

https://github.com/djcb/elisp/blob/master/themes/zenburn-theme.el

它使用了很多:inherit设置。但是,我注意到当我切换到另一个主题 x 然后返回时,x 的前景将与 zenburn 的:inherit.

该怎么办?

4

2 回答 2

2

:inherit 在 Emacs 24 中的工作很奇怪......目前尚不清楚当前行为是“功能”还是错误。我通常加载主题:

(load-theme 'zenburn t)
(load "zenburn-theme")

在我的 init.el 末尾;显式加载应该重置继承。这是该主题的作者给出的建议,它也适用于其他主题(例如 solarized)。

于 2012-07-12T09:37:48.430 回答
0

这仅仅是因为 Emacs 自定义主题默认是累积的。要将一个主题替换为另一个主题,仅启用第二个主题是不够的。您必须首先禁用要替换的那个。否则,效果就是将两者合并

很可能,@ChristopherMonsanto 描述的加载顺序具有这样做的效果:禁用当前主题,然后启用 zenburn 主题。

FWIW,颜色主题(来自 library )与 Emacs自定义color-theme.el主题的工作方式不同——颜色主题没有这个问题/功能。有关详细信息,请参阅http://www.emacswiki.org/emacs/ColorTheme

于 2013-10-28T02:04:02.850 回答