如何将自定义命令行参数传递给Setup.hs

时间:2017-08-19 15:01:47

标签: haskell command-line-interface haskell-stack

我有stack项目。我希望能够将自己的参数传递给Setup.hs,以便我可以自定义构建过程。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

显然,我找不到比使用自定义环境变量更好的解决方案。在Container( foregroundDecoration: const BoxDecoration( image: DecorationImage( image: NetworkImage( 'https://p6.storage.canalblog.com/69/50/922142/85510911_o.png'), fit: BoxFit.fill), ), decoration: const BoxDecoration( image: DecorationImage( alignment: Alignment(-.2, 0), image: NetworkImage( 'http://www.naturerights.com/blog/wp-content/uploads/2017/12/Taranaki-NR-post-1170x550.png'), fit: BoxFit.cover), ), alignment: Alignment.bottomCenter, padding: EdgeInsets.only(bottom: 20), child: Text( "Hello World", style: Theme.of(context) .textTheme .display1 .copyWith(color: Colors.white), ), ), 中,您可以调用lookupEnv函数来检查所需的环境变量。

此外,还有Shake构建工具,用于自定义构建过程,应优先于Setup.hs配置。

答案 1 :(得分:0)

这可能取决于您的自定义构建过程。 Setup.hs有一个main函数,因此您可以通过getArgs解析参数并执行特定的操作;或者如果您想传递参数,那么您可以使用UserHooks,例如:

defaultMainWithHooks (simpleUserHooks {preBuild = xxx, postClean = yyy, ... } )

每个钩子都接受Args