1

自从我开始使用 git 来管理我的 .emacs 文件以来,我发现将所有内容保存在我的 ~/.emacs.d 目录中很有用。我想要 eshell,因此,在启动时阅读 ~/.emacs/eshell.el 而不是默认的 ~/.eshell 。

我认为这很简单,只需将 eshell-directory-name 变量更改为指向我想要的位置:

(setq eshell-directory-name '("~/.emacs.d/eshell"))

但是,当我这样做时,我得到了错误:

call-interactively: Autoloading failed to define function eshell

并且 eshell 无法加载。

更改此设置的正确方法是什么?

4

2 回答 2

1

尝试:

M-x customize-variable RET eshell-directory-name RET

或者

(setq eshell-directory-name "~/.emacs.d/eshell")
于 2013-03-05T19:29:24.363 回答
0

所以我想通了:错误消息与配置文件中的行无关,而是与配置文件的名称有关。

我将所有自定义 eshell 配置分离到一个名为 eshell.el 的文件中同名。所以将文件名更改为 my_ehsell.el 神奇地解决了这个问题。

至于定义该变量的正确方法,最好在这个问题中回答: Common Lisp中`set`,`setq`和`setf`之间的区别?

于 2013-05-31T04:21:48.240 回答