Macos Clojure';s Emacs CIDER repl-缺少.profile中的环境变量

Macos Clojure';s Emacs CIDER repl-缺少.profile中的环境变量,macos,cocoa,emacs,clojure,cider,Macos,Cocoa,Emacs,Clojure,Cider,我不知道这是Emacs的一般问题还是clojure/苹果酒的具体问题。无论如何:我如何传递在shell中工作并且当前在我的~/.profile中配置的环境变量。现在,如果我在我的项目中加入lein repl,这一切都很好: (System/getenv "FOO") -> "BAR 但当我在项目中插入苹果酒时,苹果酒repl无法看到变量: (System/getenv "FOO") -> nil 我使用的是Emacs版本24.4.50的GUI(Cocoa)版本。苹果酒版本是Cid

我不知道这是Emacs的一般问题还是clojure/苹果酒的具体问题。无论如何:我如何传递在shell中工作并且当前在我的~/.profile中配置的环境变量。现在,如果我在我的项目中加入lein repl,这一切都很好:

(System/getenv "FOO")
-> "BAR
但当我在项目中插入苹果酒时,苹果酒repl无法看到变量:

(System/getenv "FOO")
-> nil

我使用的是Emacs版本24.4.50的GUI(Cocoa)版本。苹果酒版本是Cider-20140718.747。

正如noisesmith指出的,您可以在系统范围内设置环境变量,这样就不需要让emacs使用您的.profile设置,或者,您可以从命令行启动emacs,以便它从.profile获取设置,如下面的回答所示:从命令行启动它很好,因为您可以使用不同的设置启动多个emacs。或者从脚本开始:

FOO="BAR" /Applications/Emacs.app/Contents/MacOS/Emacs project.clj

将使用具有“BAR”值的foo启动emacs,而无需在系统范围内更改任何内容。

GUI应用程序将无法在OSX上查看shell配置中的设置。我想这正是你所需要的(launchd.conf,而不是.profile,因为你的GUI应用程序不是由加载.profile的shell启动的)@奥拉莫,你怎么看?答案很准确。不过,这个问题并没有特别提到GUI应用程序。如果可以的话,我认为这只是这个问题的一个特例。对于一次性环境变量设置,还有
m-x setenv
是的,请记住在启动苹果酒之前运行它。我想我只需要从命令行启动emacs来使用苹果酒。谢谢