2011-11-07 32 views
1

我運行:
+紅寶石1.9.2p290
+的Rails 3.1.1
+ Rspec的2.6.0
+自動測試4.4.6
+ ansicon 1.40
+ spork
+ growl
在Windows Vista 64位上要經過rails 3教程。測試似乎運行良好,我得到了預期的輸出 - 除了着色。自動測試的輸出是彩色的。如果我單獨運行rspec作爲rspec spec/,我得到的是轉義序列而不是顏色。其他軌道工具也會因顏色或轉義序列而顯示。 有什麼建議嗎?在Rspec的輸出,但色彩自動檢測無顏色

+0

你試過'rspec --color'嗎? – zetetic

+0

是的,它被設置在'.rspec'文件中,這大概是爲什麼轉義序列正在被髮送。我也嘗試過'--no-color',並且不再發送轉義序列,因此交換機正常工作。我沒有收到關於找不到'ansicon'的消息,但是'ansicon'沒有捕獲轉義序列並創建彩色文本。 –

回答

1

經過重新檢查所有內容和更多研究後,我發現任何東西都不能阻止ansicon捕獲顏色序列。對ansicon的唯一要求是它位於PATH中。我將它放在c:\ windows \ system32中,因爲它總是在PATH中,但是,它大約是列表中的10個項目。一個想法是,一些Rails應用程序沒有搜索到那麼遠。我將ansicon文件複製到位於PATH頂部的C:\ RailsInstaller \ Ruby1.9.2 \ bin,現在它始終都能正常工作。

我懷疑某些Rails應用程序在PATH中的項目有問題,可能是路徑名中的空格(如「Program Files」)或Linux和Windows之間有時會扼殺程序的其他差異。

+0

當你說你將ansicon文件複製到* \ ruby​​1.9.2 \ bin時,哪些文件完全相同?你是否移動了你解壓縮的整個目錄?你也離開了system32的惡魔?另外,你是如何安裝ansicon的?你使用「asnsicon.exe -i」嗎? –

+1

根據您的系統,要複製的'ansicon'可執行文件或者是x86的內容(對於32位Windows)或者是x64(對於64位wiWindows)目錄。 ZIP中的其他文件是源代碼,不需要執行。我沒有在system32中保留可執行文件。 IIRC在使用'ansicon -i'時記錄了可能的不兼容問題,所以我使用批處理文件將目錄更改爲我的項目,執行'ansicon'(no -i)等,當我打開一個Ruby DOS控制檯窗口工作。 –

+0

真棒!我還必須設置一個變量環境:ANSICON_EXC = nvd3d9wrap.dll才能在我的系統上工作。 Windows 7 64bit –

0

大多數Ruby工具在PATH中有空格問題。因此,嘗試將ansicon放在整個PATH的前面 - 尤其是那些使用C:\Program Files\...的用戶。