使用堆栈工具管理hoogle索引

时间:2016-01-06 16:23:45

标签: haskell haskell-stack hoogle

上下文:在stack之前我在本地停止使用hoogle,因为我的索引会以某种方式与已安装的软件包失去同步。如果我没记错的话,我在ghci,命令行和cabal沙箱中遇到了不同结果的问题。

我可以利用stack环境管理我的本地hoogle数据库吗?

1 个答案:

答案 0 :(得分:5)

对于Hoogle部分,我建议使用最新的git版本,该版本将成为版本5.要安装它,请执行:

git clone https://github.com/ndmitchell/hoogle.git
cd hoogle
stack init
stack install

然后生成它并将其用于:

# generate Haddock docs for all your packages
stack haddock
# generate the Hoogle index
stack exec -- hoogle generate --local --database=.stack-work/hoogle
# perform a search for map
stack exec -- hoogle map --database=.stack-work/hoogle
# start a server at http://127.0.0.1/ to browse docs
stack exec -- hoogle server --local --database=.stack-work/hoogle

要使用Cabal而不是Stack进行此操作,请最初执行cabal install,将您的Cabal配置文件中的haddock / hoogle首选项设置为True,然后删除stack exec位。