使用cabal配置文件中指定的扩展名启动ghci

时间:2012-12-07 03:19:58

标签: haskell cabal ghci

在我的cabal文件中,我启用了一堆语言扩展。假设我有

  • TemplateHaskell
  • QuasiQuotes
  • CPP

有没有办法启动GHCi自动启用这些?而不是手动执行

  

ghci -XTemplateHaskell -XQuasiQuotes -XCPP

3 个答案:

答案 0 :(得分:4)

是的,您可以使用.ghci文件。请参阅GHC手册中的第2.9节。

~/.ghci

:set -XTemplateHaskell -XQuasiQuotes -XCPP

答案 1 :(得分:1)

cabal-ghci正是我想要的。

答案 2 :(得分:0)

在源文件顶部的pragma中指定扩展名:

{-# LANGUAGE TemplateHaskell, QuasiQuotes, CPP #-}

对于不在语言编译指示范围内的ghc选项,您也可以使用OPTIONS_GHC编译指示(并且可以编写{-# OPTIONS_GHC -XTemplateHaskell -XQuasiQuotes -XCPP #-}(注意缺少逗号),但语言编译指示在可能的情况下是首选,因为它可以移植到支持扩展的其他编译器。)