Haskell模式不适合我的项目,找不到模块

Ste*_*hen 11 emacs haskell haskell-mode

这是我的场景:

我正在开发一个包含以下目录/模块的项目:

|--proj
   |-- src
       |-- Foo
           |-- FooModule1.hs
           |-- FooModule2.hs
       |-- Bar
           |-- BarModule1.hs
Run Code Online (Sandbox Code Playgroud)

BarModule1.hs 看起来像这样:

module BarModule1 where

import Foo.FooModule1
...
Run Code Online (Sandbox Code Playgroud)

我还有一个.cabal文件指定srchs-source-dirs当然,其中列出了两个模块.

当我BarModule1.hs在Emacs 中的文件中时,我这样C-c C-l说:

proj/src/Bar/BarModule1.hs:3:8:
    Could not find module `Foo.FooModule1'
    Use -v to see a list of the files searched for.
Failed, modules loaded: none.
Run Code Online (Sandbox Code Playgroud)

我也想使用hlint,flymake-haskell-multi-load如果我激活该模式M-x flymake-haskell-multi-load,hlint将始终显示它无法找到模块的错误Foo.FooModule1,因为它不知道该.cabal文件,我在其中指定hs-source-dirs: src.

所以我的问题是:我如何制作haskell-modeflymake/ /hlint了解我的项目目录/模块树,以便找到所有模块?

或者,如何让他们知道我的.cabal文件中指定的模块?

viv*_*ian 2

在 ghci 中出现提示符时::set -iproj/src/