2012-11-04 14 views
6

Próbuję skonfigurować emacs dla haskell. Pobrałem tryb haskell z el-get i niektóre części działają (jak wcięcie, uruchamianie ghci, itp.), Ale nie mogę uzyskać pracy tags-generation.Jak skonfigurować tryb haskell do generowania tagów?

Hasktags jest zainstalowany, a (load "~/.emacs.d/el-get/haskell-mode/haskell-site-file") został dodany do mojego pliku init.

Czy hasktag muszą znajdować się w określonym katalogu? (Dodałem katalog do PATH, bez powodzenia.)

Funkcja haskell-process-generate-tags nie jest dostępna z M-x. Po ręcznym dodaniu (load "~/.emacs.d/el-get/haskell-mode/haskell-process.el") do pliku init funkcja jest dostępna, ale nie jest generowany żaden plik TAGS.

(PS: Używam emacs 24.1 z Linux)

Odpowiedz

4

hasktags powinny być w PATH, ale czy jesteś pewien, że PATH w Emacs jest taka sama jak PATH w skorupkach? Właśnie próbowałem, i haskell-process-generate-tags pracował dla mnie bez problemu. Spróbuj skonfigurować PATH z Emacs z:

(setenv "PATH" (concat (getenv "PATH") ":directory_with_hasktags")) 

Można także powiązać C-x C-s do haskell-mode-save-buffer jak opisano w examples/init.el - w tym przypadku można ustawić haskell-tags-on-save zmiennej t i hasktags zostanie wywołana przy każdym zapisywaniu z was Haskell akta.

+0

Dzięki! zmiana emacsa 'PATH' rozwiązała go. Jeszcze jedno: Czy musisz dodać do pliku init '(load" ~/.emacs.d/el-get/haskell-mode/haskell-process.el ")'? Bez tego wciąż nie działa. –

+0

Tak, potrzebowałem załadować go jawnie - ten plik nie ma autoloads dla tej funkcji. –

+0

btw, ładowanie 'haskell-process' zostało naprawione w świeżych wersjach przez dodanie' provide' ... –

Powiązane problemy