我的bash初始化脚本(~/.profile)包含重要的初始化内容,但每当我在emacs中使用shell-command或编译时,该初始化文件都不会被读取,没有这些初始化,我的emacs bash命令将失败:(如何强制emacs执行我为shell-command所使用的shell的init文件?
澄清一下:我不是在谈论M-x shell,当我将.profile符号链接到.emacs_bash时,它可以很好地读取我的init文件。
浏览elisp源代码,似乎emacs中的shell-command只是在我的情况下执行bash -c "command"。解决方案是在已经执行了我的.profile文件的shell中启动emacs(emacs &),而不是从我的窗口管理器的GUI菜单中启动emacs。