如何在已安装的包中查找符号

jos*_*uan 1 haskell symbols ghci

当我需要查找包含符号的包时,我会使用Google或Hoogle.99%的案例我发现了对Hackage的引用(这很好).

有在本地查找的方法吗?

例:

$ ghci
Prelude> :i MonadState
Not in scope: data constructor `MonadState'
Run Code Online (Sandbox Code Playgroud)

然后我搜索"hackage MonadState"并找到了

http://hackage.haskell.org/.../Control-Monad-State-Class.html
Run Code Online (Sandbox Code Playgroud)

然后:

Prelude> :m Control.Monad.State
Prelude> etc...
Run Code Online (Sandbox Code Playgroud)

你好吗?

非常感谢你!

Dmy*_*nko 5

要在本地安装的包中搜索符号,请使用hoogle:

$ cabal install hoogle
...

# generate a database of symbols
$ hoogle data
...

$ hoogle search MonadState
Control.Monad.State.Class class Monad m => MonadState s m | m -> s
Control.Monad.State.Lazy class Monad m => MonadState s m | m -> s
Control.Monad.State.Strict class Monad m => MonadState s m | m -> s
Run Code Online (Sandbox Code Playgroud)