10

Windows コマンド プロンプトの出力が本来あるべきときに色付けされないwaf の問題にパッチを適用しようとしています。このパッチを実際に実装する方法を見つけようとしていますが、十分なリソースを見つけるのに苦労しています - 誰かが私を正しい方向に向けることができますか?

更新 1

Cygwin を必要とするものは何も提案しないでください。

4

2 に答える 2

21

ctypes とSetConsoleTextAttributeのおかげで可能です

ここに例があります

from ctypes import *
STD_OUTPUT_HANDLE_ID = c_ulong(0xfffffff5)
windll.Kernel32.GetStdHandle.restype = c_ulong
std_output_hdl = windll.Kernel32.GetStdHandle(STD_OUTPUT_HANDLE_ID)
for color in xrange(16):
    windll.Kernel32.SetConsoleTextAttribute(std_output_hdl, color)
    print "hello"
于 2009-08-25T15:17:23.760 に答える
3

Python 対話型インタープリターに通常の cmd.exe コンソールを使用したい場合は、このレシピを参照してください。コンソールをシミュレートする特別なウィンドウを使用しても問題ない場合は、たとえば、より高度な curses 機能も必要なため、@TheLobster の wcurses の提案は問題ありません。

于 2009-08-25T15:16:30.220 に答える