在Emacs中切换颜色主题(<v.24)

Ame*_*ina 7 emacs elisp

更新:

请注意,此线程不适用于最新版本的Emacs(24+).Emacs现在带有它自己强大的颜色主题系统(例如,请参见此处的评论),不需要加载外部包color-theme.


我在我的.emacs文件中有以下代码片段,其中我定义了一些别名,允许我使用短扩展命令在几个颜色主题之间方便地切换:

(require 'color-theme)            
(eval-after-load "color-theme"   
  '(progn                        
     (color-theme-initialize)    
     (color-theme-aalto-light))) 

;; Aliases to color-themes, e.g. 'M-x a' switches to color-theme-hober

(defalias 'a 'color-theme-hober)
(defalias 'b 'color-theme-aalto-light)
Run Code Online (Sandbox Code Playgroud)

现在,当Emacs加载时,它会color-theme-aalto-light正确显示主题,并且当我M-x a要更改时color-theme-hober,它也能正常工作.

问题是当我尝试再次将颜色主题更改为color-theme-aalto-light.某些颜色面部保留在旧的颜色主题中,而其他颜色面部则更改为新的颜色主题.我试过不同的颜色主题组合没有运气(颜色面孔并不总是完全更新,无论我切换的颜色主题).有什么想法吗?

Vic*_*gin 9

这是'color-theme'包中的已知错误.如果该功能对您很重要,请考虑升级到trunk(将来的emacs-24.1),它原生支持更改主题(M-x customize-themes).