如何让Emacs的shell模式读取我的配置文件?

9
我在一些配置文件中定义了一些别名和函数片段,比如~/.zprofile。但是Emacs从来没有读取它们。这个话题已经被讨论过了。然而,这还不够:
  1. 它无法完全source .zshrc,并会产生错误,例如compinit等。
  2. 看起来这种方法只适用于环境变量。

所以在shell-mode或在Emacs中运行命令(Alt-!)的效果仍然与终端(模拟器)中不同。

那么有没有办法解决这个问题呢?谢谢。

1个回答

18

您可以创建一个文件 ~/.emacs_zsh(或 .emacs_bash、emacs_sh,...),shell-mode 将在启动时使用它。我的 .emacs_bash 文件很简单:

. ~/.profile

请确保在源代码的最后一行加上换行符,否则该行代码将无法被执行。


可以了!顺便问一下,你能给我提供一些相关的参考资料吗?谢谢。 - Hongxu Chen
2
这些也可以在.emacs.d中创建,但命名约定略有不同:~/.emacs.d/init_bash.sh - jthetzel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接