2

私は、リンクで説明されている方法で、hs-lint.elを使用してemacs内からhlintを使用します。

hlintは$PATHにある〜/ .cabal / binディレクトリにあり、コマンドラインから呼び出すとすべてが期待どおりに機能します。しかし、これを新しいマシンにセットアップして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

1 に答える 1

4

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

(setenv "PATH" (concat "~/.cabal/bin:" (getenv "PATH")))
(add-to-list 'exec-path "~/.cabal/bin")
于 2012-01-13T23:22:46.483 に答える