I've come to rely a lot on
projectile-toggle-between-implementation-and-test to jump between implementation and test when developing Clojure. However when I tried to use it in my Haskell projects it didn't work at all. I found that two things needed adjusting.
The project type was wrongly set to
make. I fixed that by explicitly setting it to
((nil . ((projectile-project-type . haskell-cabal))))
Second, the test suffix,
Spec, didn't match what I use so I put this in my config:
(with-eval-after-load 'haskell-mode (plist-put (alist-get 'haskell-cabal projectile-project-types) 'test-suffix "Test"))
I'm not very experienced with configuring Emacs, so I'm wondering if this is a good way of doing it, or if there's a better way?