Eshell - 默认目录和路径定义在哪里?

时间:2011-11-07 15:11:26

标签: bash emacs configuration path eshell

关于Eshell配置的两个小问题。我查看了自定义选项甚至源代码,但无济于事。也许我应该好好看看。

  1. 当我启动Emacs并打开Eshell时,目录是'〜/ .emacs.d / elpa'而不是我的主目录'〜/',这是我所期待的。我不知道,这个配置来自哪里,并没有找到改变它的方法。

  2. 我在.bashrc中更改了$ PATH,并根据需要自定义了Emacs变量'exec-path'。但是,第一个更改并未反映在Eshell中,它不知道它,而bash确实如此。 Eshell如何获取这些信息,以及它与bash的不同之处在于它对此变量变化的了解?

  3. 感谢任何提示

    和Thorsten

    PS

    我发现了一个类似的问题[这里](http://stackoverflow.com/questions/3621755/what-setup-file-does-eshell-elisp-shell-read-when-it-starts-how-eshell-套-ⅰ)。第2点的答案是eshell不读取.bashrc,因此必须在启动过程中先前读取的文件中设置$ PATH。在我的Ubuntu系统上

    /etc/environment
    

    似乎是Emacs在启动时读取的文件,用于设置$ PATH。

1 个答案:

答案 0 :(得分:2)

eshell似乎从当前的工作目录开始,对你而言(在Emacs启动之后)是"〜/ .emacs.d / elpa"。您可以使用" M-x cd"手动更改它,但这不是必需的。如果您编辑某个文件并从其缓冲区启动eshell,则eshell将在与该文件相同的目录中启动。

但是如果你真的想在你的主目录中启动每个eshell会话,你可以进行一个钩子调用" cd"在eshell开始之前。