4

QtConsole または IPython Notebook でオブジェクトを色付きで表現したい場合は_repr_html_、オブジェクト クラスにメソッドを追加するだけです。

In [1]: class Test(object):
            def __init__(self, x):
                self.x = x

            def _repr_html_(self):
                return '''<span style="color: green">
                       Test{<span style="color: red">%s</span>}
                       </span>''' % self.x
In [2]: Test(33)
Test{33}

Test{これにより、緑、33赤、緑の素敵な色の表現が得られます}

クロスプラットフォームの方法で IPython シェルの端末バージョンでこれを行う方法はありますか?

理想的には、プロンプトのカスタマイズ用のテンプレートと同じように機能します。

In [1]: class Test(object):
            def __init__(self, x):
                self.x = x

            def _repr_shell_(self):
                return '{color.Green}Test{{color.Red}%s{color.Green}}' % self.x

そうでない場合、IPython の内部クロスプラットフォーム カラーリング システムを自分のコンソール アプリケーションにインポートして使用することはできますか? IPython コードベースを調べましたが、それを直接使用する方法は見つかりませんでした :(

4

1 に答える 1