emacsclient没有评估颜色主题?

时间:2011-03-24 05:50:19

标签: emacs lisp elisp debian emacsclient

当我启动时,我启动了emacs --daemon 并且它评估我的.emacs,但有一个例外:

  

(add-to-list'load-path“〜/ .elisp / zenburn-emacs”);修复加载问题

     

(要求'zenburn)

     

;;;颜色主题 - zenburn?

     

(add-to-list'load-path“〜/ .elisp / color-theme”)

     

(要求'颜色主题)

     

(eval-after-load“颜色主题”     “(progn这个        (彩色主题初始化)))

我知道加载路径的东西是有效的,因为M-x zenburn一旦我用emacsclient -nw启动emacsclient就加载了配色方案。

有人知道(eval-after-load [snip - see above])的内容吗?

这是一个错误吗?

系统信息:

  

GNU Emacs 23.2.1

     

安装在debian sid on2.6.32-5-amd64版本:23.2 + 1-7

     

文件名:pool / main / e / emacs23 / emacs23_23.2 + 1-7_amd64.deb

5 个答案:

答案 0 :(得分:3)

来自现在的Zenburn for Emacs维护者的提示(真的是你的):

(add-to-list 'load-path "~/.elisp/color-theme")
(add-to-list 'load-path "~/.elisp/zenburn-emacs")
(require 'zenburn)
(zenburn)

由于zenburn在内部需要它,因此您不需要颜色主题。但是,您需要在需要zenburn之后调用zenburn函数。

当你输入M-x zenburn时,你实际上正在调用(zenburn)函数,这就是为什么主题刚刚应用而不是在启动时应用的原因。

答案 1 :(得分:2)

你真的没说什么不起作用?

(require 'zenburn)不足以启动主题 您还需要调用(color-theme-zenburn)(或其别名(zenburn),因为您正在以交互方式进行操作)。

答案 2 :(得分:1)

FWIW,这是我在.emacs中加载zenburn的方式:

(require 'zenburn)
(zenburn)

通过emacsclient加载正常。

答案 3 :(得分:1)

评论太长了:

我的.emacs文件中有以下行:

(setq default-frame-alist '((font . "Inconsolata-20") (tool-bar-lines . 0) (menu-bar-lines . 0)))

如果我举个例子

(color-theme-taylor)

在这一行之后它起作用,如果我把它放在这一行之前,它就没有。

(require 'color-theme)
(color-theme-initialize)    

(setq default-frame-alist '((font . "Inconsolata-20") (tool-bar-lines . 0) (menu-bar-lines . 0)))

(color-theme-taylor)

有效...也许你的问题可能有类似的原因......

答案 4 :(得分:0)

(progn (require 'color-theme) (color-theme-initialize))这样的东西应该有效。要查看(eval-after-load "color-theme" '(progn (color-theme-initialize)))执行的操作,请检查color-theme-initialize是否附加到after-load-alistdescribe-variable C-h v)。如果没有,那可能是一个错误。