jyp / dante

392 stars 51 forks source link

Changes to other modules not "caught"? #105

Closed CThuleHansen closed 5 years ago

CThuleHansen commented 5 years ago

Hi.

If Y.hs with module Y depends on module X in file X.hsc and I then make a change in X.hsc, then this change is not picked up by the buffer that holds Y.hs, which displays an error with red line and pop-up. It seems to happen because it is an hsc file. A restart of dante and resave of file Y.hs usually works. Any ideas to make this happen automatically?

My emacs configuration is:

(require 'haskell-mode)
(add-hook 'haskell-mode-hook 'dante-mode)
(add-hook 'haskell-mode-hook 'flycheck-mode)
;; Enable hlint
(add-hook 'dante-mode-hook '(lambda () (flycheck-add-next-checker 'haskell-dante '(warning . haskell-hlint))))

(setq flymake-no-changes-timeout nil)
(setq flymake-start-syntax-check-on-newline nil)
(setq flycheck-check-syntax-automatically '(save mode-enabled))
jyp commented 5 years ago

Dante is a "dumb" interface to GHCi. (In this case the ":r" and ":l" commands). Working around shortcomings of the build system of GHC(i) is out of scope for Dante.

CThuleHansen commented 5 years ago

Okay. Thank you.