2013-10-04 71 views
3

使用import ipdb; ipdb.set_trace()插入斷點。 顏色是罰款時,先打斷點,但它顯示了真彩色的顏色代碼,而不是當打BP第二時間(由按c)等。IPDB顯示顏色代碼,而不是顏色

 
    ←[1;32m  72 ←[1;33m  ←[1;32mimport←[0m ←[0mipdb←[0m←[1;33m;←[0m ←[0mipdb←[0m←[1;33m.←[0m←[0mset_trace←[0m←[1;33m(←[0m←[1;33m)←[0m ←[1;31m# XXX BREAKPO 
    INT←[0m←[1;33m←[0m←[0m 

它是在Windows 7中,python 2.7和2.6有同樣的問題。我想一個變通的方法是使用NOCOLOR方案(如何讓NOCOLOR計劃?),以及如何解決使用這一問題的配色方案?謝謝!

+0

在cmd中運行? – shx2

+0

是的,在Windows本地命令提示pyreadline運行 – Tmx

回答

3

它是使用IPDB爲Windows時的已知問題:https://github.com/gotcha/ipdb/issues/31

顯然,這票仍然是開放的。

有從解決問題的一個傢伙的quickfix:

OK ......我註釋掉線IPDB/主要的.py:43這臺io.stdout 和sys.stdout的。然後我添加了「通過」聲明。

這現在似乎爲我工作的窗口。

+1

謝謝!你的意思是'#io.stdout = sys.stdout = sys .__ stdout__'這行嗎?就我而言,它在'ipdb/__ main __。py'的第60行。它也適用於我。 – Tmx

+0

可能您正在使用新版本的ipdb。但就是這樣! –

+0

我通過'easy_install'安裝了'ipdb',爲了應用此修復程序,我必須從源代碼安裝嗎? – User