【发布时间】:2017-11-25 16:21:21
【问题描述】:
我有一个 makefile 用于安装我的个人配置文件仓库,其中一部分是编译我的 emacs 脚本:
compile:
emacs -batch --eval "(progn (load \"~/.emacs\") (byte-recompile-directory \"~/.emacs.d\" 0))"
问题是,在 OSX 上,我有一个名为“emacs”的别名,它指向在终端中使用的 Emacs.app 二进制文件,这是在我的 ~/.bash_profile 中定义的。
现在,无论我做什么,我似乎都无法让 Make 调用的 shell 读取启动文件以加载该别名,因此编译步骤总是失败。
有人知道怎么做吗?
【问题讨论】:
-
启动你自己的shell...
bash -c ‘emacs ....’ -
不幸的是没有骰子......
-
可能是
bash —login -c ...?这是双破折号登录。 -
这与问题所要求的完全相反。通过指定
--login,您将强制bash 读取.bash_profile并设置别名:他想不 设置别名。至于第一个建议,make 已经这样做了,所以不会有任何区别。 -
@MadScientist 你是对的,谢谢你让我保持直截了当。