2012-12-02 14 views
13

clojure-modeを使用している場合、C-c C-zでREPLを起動できるはずです。 (eval-expression (getenv "PATH")を経て、でもEmacsのように述べている)、私は私のPATHである/usr/local/binbrew経由)と/usr/local/binにインストールleinを持ってEmacsで `lein` REPLを起動できません

Searching for program: no such file or directory: lein 

:私がしようとするたびに、しかし、私はエラーを取得します。

私には何が欠けていますか?

+0

こちらのような質問がありました:http://stackoverflow.com/questions/13243048/mac-osx-emacs-24-2-and-nrepl-el-not-workingたぶん、answareがあなたを助けるかもしれません。 ;) –

答えて

30

Ah! PATH環境変数は、すべてのemacs検索パスではありません。また、 "exec-path"もあります。それは明らかにmostly the same thing but not exactlyです。とにかく

、追加:

(add-to-list 'exec-path "/usr/local/bin") 

を私.emacs.d/init.elに(または.emacsそれはあなたが転がる方法です場合は)私のために物事をクリア。私は最初、(単純な)add-to-listを試してみた

(setenv "PATH" (concat (getenv "PATH") ":/usr/local/bin")) 
(setq exec-path (append exec-path '("/usr/local/bin"))) 

:上記のリンクドキュメントは次のように、もう少し総合的な何かを示唆しています。しかし、YMMV。

1

私は同じ問題を抱えていて、何が間違っていたのかを調査し始めました。 私はすぐに私のexec-pathは、この(単純化の例)のように見えた発見:

("/usr/local/bin /bin /sbin"). 

それは、代わりに別のパスのリストのちょうど1つの長い文字列とリストでした。 私のenv PATH変数はまったく同じように見えました。明らかに問題は私のシェルから来ていた。

私は魚の殻を使用します。それはPATH変数の区切り記号は単なるスペースです。 私が使っているexec-path-from-shellパッケージは、それを解析できません。 私は私の.emacs.d/init.elにこれを追加することによってそれを修正:

(setq exec-path (split-string (car exec-path))) 

更新: を最後に、それは時代遅れのexec-パスからシェルパッケージでした。バージョン1.8を使用してください。それは魚(そしてtcsh)とうまくいく。