.emacs中有多个自定义设置面和自定义设置变量?

时间:2013-04-07 20:41:58

标签: emacs emacs-faces

当我通过M-x customize-face菜单自定义面部并将更改保存到磁盘时,Emacs会将自动生成的代码添加到我的.emacs文件中,如下所示:

(custom-set-faces
 ;; custom-set-faces was added by Custom.
 ;; If you edit it by hand, you could mess it up, so be careful.
 ;; Your init file should contain only one such instance.
 ;; If there is more than one, they won't work right.
; 
;; SOME CODE
; 
)

其中SOME CODE类似于:

 '(diredp-dir-priv ((t (:foreground "cyan"))))

现在,假设我想手动SOME CODE进行更改,并可能添加更多代码来修改其他面孔。将这些更改保留在custom-set-faces块下是否明智?或者我应该将它移到另一个块(以避免Emacs混淆)

另外,Emacs会感到困惑我有多个 (custom-set-faces ... )块吗? (同问(custom-set-variables ...)

1 个答案:

答案 0 :(得分:4)

如果您手动添加自定义面,请将其保留在自定义面中。

至于有多个(custom-set-faces ... )(custom-set-variables ... )列表,我刚刚对此进行了测试(在Emacs 23.1中)。它们可以工作--Emacs将处理所有列表 - 但是,如果您随后使用M-x customize-face添加新的自定义面(类似于变量)并将其保存以供将来的会话使用,Emacs会将所有列表合并为一个。所以,你应该只保留一个。