2017-08-10 97 views
1

我在Windows 10上使用Stack來運行GHC,並在我的日常工作流程中使用Git Bash(MINGW64)。這包括使用GHC和GHCi,通常工作正常。堆棧測試輸出在MINGW64上亂碼

然而,當我請從MINGW64 stack test,輸出由ANSI顏色代碼亂碼:

$ stack test 
UC-0.1.0.0: test (suite: UC-test) 

[?25lSorting Group 1: 

[2K[1F prop1: [[92mOK, passed 100 tests[0m] 

[2K[1F prop2: [[92mOK, passed 100 tests[0m] 

     Properties Total 
Passed [92m2[0m   [92m2[0m 
Failed 0   0 
Total [92m2[0m   [92m2[0m 
[?25h 

奇怪的是,如果我從正常Windows控制檯(cmd)運行stack test,它顯示正確:

Correctly coloured test output in cmd

我想用我的(GIT)擊控制檯堅持,而不必使用兩個單獨的控制檯窗口,所以:

  • 是否可以在MINGW64中爲stack test正確呈現顏色?
  • 或者,我可以關閉stack test的ANSI着色,這樣至少可以更容易地讀取輸出結果嗎?

我也想跑的stack --color never test變化,但它似乎沒有任何區別。

回答

2

參數可以被傳遞到測試可執行這樣的:

stack test --test-arguments "--plain" 

--plain是去除測試的框架顏色的選項,而--color never是從可口。

+0

看起來並不是這樣的......當我將它複製到我的bash中並運行它時,我得到「無法理解這些額外的參數:從不」 –

+0

'--color永不是'是美味的選項。你在使用另一個測試框架嗎? –

+1

測試框架改爲使用'--plain'。一般來說,您可以嘗試向測試可執行文件請求'--help'。 –