2
我通過usingConfigFile
爲每個項目維護小配置文件。我希望能夠覆蓋命令行上的任何設置。它似乎使用shakeArgsWith
(而不是shakeArgs
)是第一步,但我沒有看到一個明顯的方式來連接到getConfig
產生的值。有沒有一個標準的方法來做到這一點?如何覆蓋命令行上的Shake配置
我通過usingConfigFile
爲每個項目維護小配置文件。我希望能夠覆蓋命令行上的任何設置。它似乎使用shakeArgsWith
(而不是shakeArgs
)是第一步,但我沒有看到一個明顯的方式來連接到getConfig
產生的值。有沒有一個標準的方法來做到這一點?如何覆蓋命令行上的Shake配置
沒有一個標準的方法,但我知道幾個更大的構建系統已經發明瞭一些東西。 shakeArgsWith
,readConfigFile
和usingConfig
的組合應該這樣做。喜歡的東西(未經測試):
main = shakeArgsWith shakeOptions [] $ \_ args -> return $ Just $ do
file <- readConfigFile "myfile.cfg"
usingConfig $ Map.union (argsToSettings args) file
myNormalRules
哪裏argsToSettings
一些,它分析你的論點,並把它們轉化成設置的功能 - 例如,突破第一個=
符號或類似的。