Domanda

Uso hlint da Emacs con Emacs con HS-Lint.el nel modo esattamente descritto nel collegamento.

Hlint vive nella mia directory ~/.cabal/bin, che è sul mio percorso $, e tutto funziona come previsto quando lo chiamo dalla riga di comando. Quando l'ho impostato su una nuova macchina e ho provato a invocarlo all'interno di Emacs, tuttavia, ricevo il seguente messaggio nel minibuffer:

error in process sentinel: Moved past last error

e quanto segue in un *hs-lint* respingente:

-*- 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

Dalla mia comprensione, non c'è motivo per cui Bash dovrebbe avere difficoltà a trovare Hlint. È lì?

Grazie in anticipo per eventuali suggerimenti.

È stato utile?

Soluzione

Se lanci Emacs da un collegamento desktop il PATH che ha non è il PATH che il tuo guscio ha. Se lanci Emacs da una shell, dovresti essere in grado di confermare che questo è il problema. Ci sono molti modi per risolverlo. Ad esempio, su OS X puoi aggiungere variabili di ambiente a ~/.MacOSX/environment.plist. Oppure puoi impostare PATH Inside Emacs con qualcosa di simile:

(setenv "PATH" (concat "~/.cabal/bin:" (getenv "PATH")))
(add-to-list 'exec-path "~/.cabal/bin")
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top