2012-01-13 15 views
2

私は、emacs内のhlintをhs-lint.elと正確にリンクで説明しています。新しいマシンでは動作しないEmacsとのHlintの統合

私の$ PATH上にある〜/ .cabal/binディレクトリにhlintがあり、コマンドラインからすべてを呼び出すと期待どおりに動作します。私は新しいマシン上でこれを設定し、emacsの中でそれを起動しようとすると、しかし、私は、ミニバッファで、次のメッセージが表示されます:

error in process sentinel: Moved past last error 

*hs-lint*バッファに次

-*- mode: hs-lint; default-directory: "/home/wvoq/project/" -*- 
HLint started at Fri Jan 13 02:48:53 

hlint /home/wvoq/project/myfile.hs 
/bin/bash: hlint: command not found 

HLint exited abnormally with code 127 at Fri Jan 13 02:48:53 

私の理解から、bashがhlintを見つけるのが難しいという理由はありません。ある?

ご意見ありがとうございます。

答えて

4

デスクトップショートカットからEmacsを起動した場合、PATHはシェルにあるPATHではありません。シェルからEmacsを起動する場合は、これが問題であることを確認する必要があります。それを修正する方法はたくさんあります。たとえば、OS Xでは、環境変数を~/.MacOSX/environment.plistに追加できます。あるいは、

(setenv "PATH" (concat "~/.cabal/bin:" (getenv "PATH"))) 
(add-to-list 'exec-path "~/.cabal/bin") 
+0

のように、Emacs内でPATHを設定することができます。最初の行で問題を解決するには十分でした。再度、感謝します。 – wvoq

+1

また、OS X上でEmacsを正常に起動し、[exec-path-from-shell](https://github.com/purcell/exec-path-from-shell)というelispライブラリを使ってEmacsの$シェルで見られるものと一致するPATH。インストール可能なパッケージは、Marmaladeと[Melpa](http://melpa.milkbox.net/)で入手できます。 – sanityinc

関連する問題