123456789101112131415161718192021222324 |
- """
- pprint and pformat wrappers with colorization support
- """
- from __future__ import print_function
- import sys
- from pprint import pformat as pformat_
- def _colorize(text, colorize=True):
- if not colorize or not sys.stdout.isatty():
- return text
- try:
- from pygments import highlight
- from pygments.formatters import TerminalFormatter
- from pygments.lexers import PythonLexer
- return highlight(text, PythonLexer(), TerminalFormatter())
- except ImportError:
- return text
- def pformat(obj, *args, **kwargs):
- return _colorize(pformat_(obj), kwargs.pop('colorize', True))
- def pprint(obj, *args, **kwargs):
- print(pformat(obj, *args, **kwargs))
|