2012-01-13 3 views
2

이맥에서 hlint를 사용하여 hs-lint.el과 정확히 연결됩니다.새 컴퓨터에서 작동하지 않는 이맥스와의 Hlint 통합

hlint는 내 $ PATH에있는 ~/.cabal/bin 디렉토리에 있으며 명령 줄에서 호출하면 예상대로 작동합니다.

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 

나는 새 시스템에이 설정하고 이맥스 내에서 호출하려고 할 때, 그러나, 나는 다음 미니 버퍼에 메시지가 내 이해에서 배쉬가 hlint를 찾는 데 어려움을 겪을 이유는 없습니다. 거기 있니?

미리 제안 해 주셔서 감사합니다.

답변

4

바탕 화면 바로 가기에서 Emacs를 실행하면 PATH은 쉘에있는 PATH이 아닙니다. 셸에서 Emacs를 시작하면 이것이 문제라는 것을 확인할 수 있어야합니다. 그것을 고치는 많은 방법이 있습니다. 예를 들어 OS X에서는 환경 변수를 ~/.MacOSX/environment.plist에 추가 할 수 있습니다. 또는 다음과 같이 이멕스 내에 PATH을 설정할 수 있습니다.

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

그래, 첫 번째 줄로 해결할 수 있습니다. 다시 한번 감사드립니다. – 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